Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/18: Рейтинг темы: голосов - 18, средняя оценка - 4.89
5 / 6 / 0
Регистрация: 07.03.2018
Сообщений: 484
Записей в блоге: 1

История для браузера

23.07.2018, 17:01. Показов 3481. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!
Имеется TextBox куда вводить адрес для поиска через WebBrowser. На кнопке "Поиск" лежит такой код:
C#
1
((WebBrowser)tabControl1.SelectedTab.Controls[0]).Navigate(TSTB.Text);
Так вот есть еще Класс:
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
class ListHistory
    {
        public List<string> listhistory;
        private string fileName;
        public OnListChanged listChanged; // делегатная переменная
        public delegate void OnListChanged(); //делегат
 
        public ListHistory(string fileName) //конструктор - заполняет список из файла
        {
            this.fileName = fileName;
            listhistory = File.ReadAllLines(fileName).ToList();
        }
 
        public void Add(string newString)
        {
            listhistory.Add(newString); //добавляем в список
            if (listChanged != null) listChanged(); //вызываем обработчик изменения списка
            File.WriteAllLines(fileName, listhistory); //сохраняем файл
        }
 
        public void Remove(int index)
        {
            listhistory.RemoveAt(index); //удаляем из списка
            if (listChanged != null) listChanged(); //вызываем обработчик изменения списка
            File.WriteAllLines(fileName, listhistory);  //сохраняем файл
        }
    }
Туда по сути мы должны загонять те адреса что пишутся в TextBox после нажатия на кнопку поиск. Но...
Если вставить код:
C#
1
listHistory.Add(TSTBSearch.Text);
То выдаст ошибку такого типа:
System.NullReferenceException: "Ссылка на объект не указывает на экземпляр объекта."
System.Windows.Forms.TabControl.Selected Tab.get вернул null.
и ссылается на:
C#
1
((WebBrowser)tabControl1.SelectedTab.Controls[0]).Navigate(TSTB.Text);
Вопрос один: Почему ругается то... Второй день мучаюсь. Помогите люди добрые

Добавлено через 15 минут
Немного не то. Извиняюсь... ошибка другого плана
System.NullReferenceException: "Ссылка на объект не указывает на экземпляр объекта."
и ссылается на:
C#
1
listHistory.Add(TSTBSearch.Text);
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
23.07.2018, 17:01
Ответы с готовыми решениями:

История для браузера
Здравствуйте, скажите как можно реализовать историю для браузера таким образом что кликнув на запись открывалась вкладка с этим сайтом....

История открытых/созданных файлов в программе файлов (история), записывать в файл либо бд, или ещё как-то
Ребят, помогите нужно сделать историю открытых/созданных файлов в menustrip1 Как это сделать? Занести имена файлов и путь, можно ещё по...

[WPF] История для своего браузера
Добрый день! Создаю свой браузер на wpf. Возник вопрос. Как реализовать историю для браузера? Ввод ссылок происходит через textBox....

6
911 / 796 / 329
Регистрация: 08.02.2014
Сообщений: 2,391
23.07.2018, 17:05
Цитата Сообщение от ivanbondaruk Посмотреть сообщение
Немного не то. Извиняюсь... ошибка другого плана
System.NullReferenceException: "Ссылка на объект не указывает на экземпляр объекта."
и ссылается на:
либо listHistory = null

либо TSTBSearch = null


отладка Вам в помощь
1
5 / 6 / 0
Регистрация: 07.03.2018
Сообщений: 484
Записей в блоге: 1
23.07.2018, 17:23  [ТС]
Цитата Сообщение от SeIZVeIZ Посмотреть сообщение
либо listHistory = null
Да ругается на него. Только причем он тут если в него запихать надо.
0
911 / 796 / 329
Регистрация: 08.02.2014
Сообщений: 2,391
23.07.2018, 17:51
ivanbondaruk, в том что список нужно инициализировать перед использованием, у Вас где-то ошибка закралась, т.к в конструкторе данный список проходит инициализацию файлом, и либо на данном этапе ошибка, либо вы потом обращаетесь как-то к данному классу без инициализации его через конструктор с параметром.

Добавлено через 2 минуты
Приведите больше кода, где будет видно как вы создаёте экземпляр класса ListHistory. и как вы дальше с ним работаете и пытаетесь занести туда данные из текстбокса, не одной строчкой а больше кода.
1
 Аватар для Wolflind
127 / 107 / 31
Регистрация: 17.03.2016
Сообщений: 445
Записей в блоге: 1
23.07.2018, 17:52
C#
1
listHistory = new List<String>();
зыбыли наверное
0
5 / 6 / 0
Регистрация: 07.03.2018
Сообщений: 484
Записей в блоге: 1
23.07.2018, 19:30  [ТС]
Та нет не забыл
0
 Аватар для Wolflind
127 / 107 / 31
Регистрация: 17.03.2016
Сообщений: 445
Записей в блоге: 1
23.07.2018, 22:34
Лучший ответ Сообщение было отмечено ivanbondaruk как решение

Решение

тут только 2 варианта либо
listHistory == null
либо
TSTBSearch == null
Цитата Сообщение от ivanbondaruk Посмотреть сообщение
Та нет не забыл
в коде я этого не вижи
и посоветовал бы инициализировать в классе в самом причем при объявлении
либо в конструкторе

еще как вариант присвоение идет после попытки добавления
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
23.07.2018, 22:34
Помогаю со студенческими работами здесь

История браузера.
Подскажите пожалуйста, как можно посмотреть историю похождений сотрудников по интернету в Windows 7 Professional, а то в самом браузере...

История браузера
Здравствуйте. Вопрос в следующем: есть ли какие скрипты/плагины, позволяющие отслеживать историю браузера, на котором выполняется скрипт?...

История браузера
Народ, подскажите как лучше сделать историю для своего браузера и через что.

История браузера Опера
Можно как то импортировать историю с оперы в мою программу?

История браузера совпадает с другой историей
Здравствуйте! Дело в браузере Google Chrome. Пришла я на работу, а там история страниц и закладки в браузере точно такие же, как у меня...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru