Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
0 / 0 / 0
Регистрация: 06.03.2017
Сообщений: 19

По нажатию на button отобразить диск или папку

07.03.2017, 08:51. Показов 1600. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как сделать так, чтобы по нажатию на button отобразить в компоненте webBrowser определенный дисковый раздел или папку?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
07.03.2017, 08:51
Ответы с готовыми решениями:

Отобразить label по нажатию button
В общем в свойствах label стоит Visible=false (скрыть на форме) При нажатии на button, должно отобразить label т.е. сделать видимым его на...

Отобразить/скрыть панель по нажатию на button
Как отобразить или скрыть panel по нажатию на button, чтобы на самом button отображался текст - скрыто/отображено. И чтобы это действие...

Выпадающий список или меню по нажатию button
Здравствуйте. Мне нужно реализовать два списка, которые появляются по нажатию кнопки(см скриншот). Первый пример я так понял отображается...

15
 Аватар для Aferuga
645 / 529 / 324
Регистрация: 20.05.2015
Сообщений: 1,471
07.03.2017, 09:05
Помоему вам нужен OpenFileDialog

Добавлено через 1 минуту
либо SaveFileDialog
0
0 / 0 / 0
Регистрация: 06.03.2017
Сообщений: 19
07.03.2017, 09:09  [ТС]
Aferuga, как раз Openfiledialog совсем не нужен. Только по button или Combobox.
0
33 / 33 / 18
Регистрация: 16.09.2015
Сообщений: 246
07.03.2017, 09:16
Вам нужно событие combobox_selectedindexchanged, в нем
C#
1
webBrowser1.Navigate(comboBox1.SelectedItem.ToString());
Подращумеваю что коллекция комбобокса имеет такой вид:
С:\
D:\
Итд
1
0 / 0 / 0
Регистрация: 06.03.2017
Сообщений: 19
07.03.2017, 09:39  [ТС]
aurisdies, все работает, спасибо! Вы не знаете как сделать, чтобы TextBox отображал какая папка или диск в данный момент открыт и при переходе в другую папку всегда отображал путь?
0
33 / 33 / 18
Регистрация: 16.09.2015
Сообщений: 246
07.03.2017, 11:11
Введи переменныю в которой всегда будет храниться путь и с ней работай
0
 Аватар для Aferuga
645 / 529 / 324
Регистрация: 20.05.2015
Сообщений: 1,471
07.03.2017, 11:18
Цитата Сообщение от Kanna Посмотреть сообщение
TextBox отображал какая папка или диск в данный момент открыт и при переходе в другую папку всегда отображал путь?
C#
1
2
3
4
 private void webBrowser1_Navigated(object sender, WebBrowserNavigatedEventArgs e)
        {
            richTextBox1.Text = webBrowser1.Url.LocalPath;;
        }
1
0 / 0 / 0
Регистрация: 06.03.2017
Сообщений: 19
07.03.2017, 13:11  [ТС]
Aferuga, Спасибо! Кстати, а вообще возможно сделать так, чтобы можно было вводить путь в этот TextBox и переходить к нему?
0
 Аватар для Aferuga
645 / 529 / 324
Регистрация: 20.05.2015
Сообщений: 1,471
07.03.2017, 13:32
Kanna, aurisdies уже как бы ответил на это вопрос

Добавлено через 11 минут
C#
1
2
3
4
5
6
7
private void textBox1_TextChanged(object sender, EventArgs e)
        {
            if (Directory.Exists(textBox1.Text) || (File.Exists(textBox1.Text)))
            {
                webBrowser1.Navigate(textBox1.Text);
            }
        }
Добавлено через 1 минуту
библиотеку забыл
C#
1
using System.IO;
1
0 / 0 / 0
Регистрация: 06.03.2017
Сообщений: 19
07.03.2017, 14:37  [ТС]
Aferuga, Все работает, но есть одна странность. Когда ввожу адрес и ставлю слэш чтобы вводить имя папки, он сам пропадает и курсор ввода текста перескакивает в начало всего текста. Однако если ввести адрес впереди/до текста и после стереть лишнее, все переходит. Что-то совсем не понятно.

Добавлено через 2 минуты
Aferuga, извиняюсь, все работает. Нужно было немного поправить свойства. Спасибо Вам большое. Вы мне очень помогли.

Добавлено через 34 секунды
aurisdies, Спасибо большое за помощь!

Добавлено через 2 минуты
Aferuga, а хотя нет, проблема выше все еще актуальна
0
 Аватар для Aferuga
645 / 529 / 324
Регистрация: 20.05.2015
Сообщений: 1,471
07.03.2017, 14:42
Ну правильно если обе обработки запилить с привязкой к одному textBoxу

Добавлено через 5 минут
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
private bool brow_nav=true;
private void textBox1_TextChanged(object sender, EventArgs e)
        {
            if (Directory.Exists(textBox1.Text) || (File.Exists(textBox1.Text)))
            {
                    brow_nav = false;
                webBrowser1.Navigate(textBox1.Text);
                    brow_nav = true;
            }
        }
private void webBrowser1_Navigated(object sender, WebBrowserNavigatedEventArgs e)
        {
            if (brow_nav)
            textBox1.Text = webBrowser1.Url.LocalPath;;
        }
0
0 / 0 / 0
Регистрация: 06.03.2017
Сообщений: 19
07.03.2017, 16:01  [ТС]
Aferuga, все равно слэш стирается и я не могу его написать. Даже в новом проекте эта проблема.
0
33 / 33 / 18
Регистрация: 16.09.2015
Сообщений: 246
07.03.2017, 18:45
Цитата Сообщение от Kanna Посмотреть сообщение
все равно слэш стирается и я не могу его написать. Даже в новом проекте эта проблема.
Наверное изменением текста считается даже изменение одной буквы и каждый раз выполняется функция textBox1_TextChanged, собственно могут быть проблемы с распознованием символов, советую перенисти эту функцию на кнопку.
правда есть еще одна мысль, слэш наверное экранируется, сейчас у себя попробую.

Добавлено через 24 минуты
Один из вариантов обхода вашей проблемы заключается в том чтобы автоматически дополнять слешем при переходе в другую папку, тогда нам не приходится вводить слеш вообще, в принципе удобно, однако подписки на события пришлось вынести, потестируете поймете почему)
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;
 
namespace webBrowserC
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        private void Form1_Load(object sender, EventArgs e)
        {
            webBrowser1.Navigate(@"C:\");
            textBox1.Text = @"C:\";
            this.webBrowser1.Navigated += new System.Windows.Forms.WebBrowserNavigatedEventHandler(this.webBrowser1_Navigated);
            this.textBox1.TextChanged += new System.EventHandler(this.textBox1_TextChanged);
        }
        private bool brow_nav = true;
        private void textBox1_TextChanged(object sender, EventArgs e)
        {
 
            if (Directory.Exists(textBox1.Text) || (File.Exists(textBox1.Text)))
            {
                brow_nav = false;
                webBrowser1.Navigate(textBox1.Text);
                brow_nav = true;
            }
        }
 
        private void webBrowser1_Navigated(object sender, WebBrowserNavigatedEventArgs e)
        {
            if (brow_nav)
               textBox1.Text = webBrowser1.Url.LocalPath + @"\"; 
        }
    }
}
идентичный код (25 и 26 строка) нужно удалить из Disigner.cs
0
0 / 0 / 0
Регистрация: 06.03.2017
Сообщений: 19
07.03.2017, 19:02  [ТС]
aurisdies, интересная идея, вроде работает, но при запуске программы вылазит это ...
Миниатюры
По нажатию на button отобразить диск или папку  
0
0 / 0 / 0
Регистрация: 06.03.2017
Сообщений: 19
07.03.2017, 19:14  [ТС]
aurisdies, и вам не надоело мне помогать?
0
33 / 33 / 18
Регистрация: 16.09.2015
Сообщений: 246
08.03.2017, 09:42
Цитата Сообщение от Kanna Посмотреть сообщение
aurisdies, интересная идея, вроде работает, но при запуске программы вылазит это ...
Вы не убрали подписки на события из Designer.cs, я же их сделал 25 и 26 строкой.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
08.03.2017, 09:42
Помогаю со студенческими работами здесь

По нажатию на картинку или button перейти на другую страницу
Я только начал разбираться в ASP.NET VMC, мне требуется создать ссылку на другой метод контролера, но только не через ссылку...

Как реализовать скачивание файла по нажатию на label или button?
Доброго времени суток, уважаемые жители и гости форума. Вопрос заключается в следующем: Пишу приложение мобильное под Андройд и...

Распаковка того или иного ресурса на диск по нажатию кнопки
Я хочу сделать восстановитель файлов для одной игры( ну запихнуть в прогу оригинальные файлы этой игры) мне надо знать как эти файлы...

как скачать ехе файл на диск или в любую папку?
Здрасте помогите написать скрипт что бы можно было скачать файл с сайта юкоз при нажатии на ссылку и автоматом сохранить его на диск D или...

Не могу открыть ни одну папку или диск, при подключении юсб всё зависает
Не могу открыть ни одну папку или диск, при подключении юсб всё зависает вплоть до перезагрузки пк. При сохранении любого вида файлов всё...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru