powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Временно вырубить событие на комбобокс
3 сообщений из 3, страница 1 из 1
Временно вырубить событие на комбобокс
    #32640140
sposad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Народ, помогите разобраться. К сообщению приложен тестовый проект. В нём по нажатию кнопки на форме заполняется комбобокс данными таблицы Categories базы данных Northwind. Конечно работать будет там, где эта база есть. Причем столбец CategoryID выставляется как ValueMember, а CategoryName – как DisplayMember. На ComboBox1_SelectedValueChanged висит msgbox значения комбобокса.
Проблема в том, что видимо при определении DataSourse, ValueMember и DisplayMember каждый раз происходит ComboBox1_SelectedValueChanged и вылетают ненужные msgbox-сы, в том числе и об ошибке. Вопрос в том, можно ли это событие как-то отключить до тех пор, когда комбобокс будет полностью определён, и после этого снова включить ? Или как то по другому ... ?

Спасибо.
...
Рейтинг: 0 / 0
Временно вырубить событие на комбобокс
    #32640283
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно поставить флажок вырубающий ваши MsgBox например:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
Dim flag as Boolean = False

Private Sub ComboBox1_SelectedValueChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedValueChanged
	If me.flag Then
	    Try
	        MsgBox(Me.ComboBox1.SelectedValue)
	    Catch exe As Exception
	        MsgBox(exe.Message)
	    End Try
	End If
End Sub

Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
	Me.flag = False
	Me.SqlDataAdapter1.Fill(DataSet11, "Categories")
	Me.ComboBox1.DataSource = DataSet11.Tables("Categories")
	Console.WriteLine("categories")
	Me.ComboBox1.ValueMember = "CategoryID"
	Console.WriteLine("value")
	Me.ComboBox1.DisplayMember = "CategoryName"
	Console.WriteLine("display")
	Me.flag = True
End Sub

Код: plaintext
 uid  =  S a
...
Рейтинг: 0 / 0
Временно вырубить событие на комбобокс
    #32641204
sposad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо Sa !!!

А я то это обработал как коряво о-о-о-о-о
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Временно вырубить событие на комбобокс
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]