Для нескольких ComboBox в ходе программы нужно менять свойство DropDownStyle - Visual Basic .NET

  1. Не уверен что правильно указал заголовок, но суть вот в чем. У меня есть несколько ComboBox которым в ходе программы нужно менять свойство DropDownStyle Я только познаю платформу .NET , а до этого писал очень давно еще на VB 6.0 Решил воспользоватся чудесной штукой (не знаю как называется ) , которая в оглавлении выглядит как (sender As Object). В общем, в нужных мне событиях вышла такая штука vb.net1 DropDownStyle_off(sender)и так же подпрограмма DropDownStyle_offvb.net1 2 3 Sub DropDownStyle_off(sender As Object)         sender.DropDownStyle =DropDownList     End Subтолько вот это все дело не работало. Позже покопавшись я сообразил что нужно указать класс, то есть выглядит всеvb.net1 2 3 Sub DropDownStyle_off(sender As Object)         sender.DropDownStyle = ComboBoxStyle.DropDownList     End SubСобственно вопросы. 1. В каких случаях нужно указывать класс, то есть писать полностью ComboBoxStyle.DropDownList а не просто свойство DropDownList? 2. Где брать этот самый класс? Неужели каждый раз нужно гуглить чтобы узнать от чего следует каждое свойство 3. Использование sender`а в данном случае это и есть делегирование? ))) Не мог понять что это. Увы VB 6.0 не является объектно ориентированным и для меня это новое. Помогите разобраться самоучке плз ) Заранее извините, опять же потому что я самоучка, мне тяжело правильно сформировать свою реч, назвать все своими именами и ясно выразится.


textual

Код:

sender.DropDownStyle = ComboBoxStyle.DropDownList


Похожие ответы
  1. На форме есть 2 Combobox, Текстовое поле и 2 кнопки. в Combobox - выпадающий список с названием улиц. (Программно задается). Базы никакой нет. Например: Арсенальная Арефьева Васина Васенко Вводим в текстовое поле часть названия улицы, или полное название, нажимаем на кнопку и в новый Combobox2 копируются эти названия улиц( или одно название). А при нажатии на вторую кнопку (Сброс), все возвращается в исходное положение. Заранее спасибо за помощьДобавлено через 2 часа 7 минут Решил все таки данные брать из текстового файла:vb.net1 2 3 4 5 6  Try             ComboBox1.Items.Clear()             ComboBox1.Items.AddRange(IO.File.ReadAllLines(Application.StartupPath & "\city.txt", System.Text.Encoding.Default))         Catch ex As Exception             MessageBox.Show(ex.Message.ToString())         End TryТогда наверно поиск можно будет осуществить по текстовому файлу с выводом искомой строки в Combobox. Подскажите, как это сделать? заранее спасибо

  1. Как сделать так что бы при наведении на запись(ее выделении) она показывалась полностью в выплывающем окне? То есть если в Combobox запись не полностью помещается, навел на нее, и она отобразилась полностью?

  1. Здравствуйте, есть word документ в котором располагаются таблицы, на форме есть несколько ComboBox, как реализовать чтобы из ComboBox выводилась информация в определенные ячейки таблицы в word?

  1. Здравствуйте, данный код выводит в ComboBox из Access. Если в 1 ComboBox поменять значения, то меняются и в остальных, как сделать чтобы каждый ComboBox был независимым от других ComboBox? Кликните здесь для просмотра всего текста vb.net1 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 Imports System.Data.OleDb   Public Class Form1     Dim connstring As String     Dim myConnection As OleDbConnection = New OleDbConnection     Friend makeBS As New BindingSource       Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) Handles MyBase.Load         connect()           Dim da As New OleDbDataAdapter(New OleDbCommand("select * from Таблица1", acsconn))         Dim dsMake As New DataSet("DsSelect")           dsMake.Tables.Add("Таблица1")         da.Fill(dsMake.Tables("Таблица1"))         makeBS.DataSource = dsMake.Tables("Таблица1")           ComboBox1.DataSource = makeBS         ComboBox1.DisplayMember = "Предмет"           ComboBox2.DataSource = makeBS         ComboBox2.DisplayMember = "Преподаватель"           ComboBox3.DataSource = makeBS         ComboBox3.DisplayMember = "Кабинет"           acsconn.Close()     End Sub   End Class

  1. возможно сделать неактивные опшены как на скрине "выберите героя"? нужно два неактивных опшена внутри селекта

  1. Доброго времени! Прошу помощи, т.к. не пойму в чём дело. Если вручную заполнить "Коллекцию" ComboBox, то всё работает, файлы .pdf запускаются "наУра". А вот если получить имена файлов так:vb.net1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Public Class Form1     Dim p As Process     Dim dirpath As String       Private Sub ComboBox1_SelectedValueChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedValueChanged         Dim filename As String         filename = ComboBox1.SelectedItem         p = Process.Start(dirpath & filename)         'MsgBox(dirpath & filename)     End Sub       Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load         dirpath = Application.StartupPath & "\Manuals"         Dim Files() As String = IO.Directory.GetFiles(dirpath)         For Each fl As String In Files             ComboBox1.Items.Add(IO.Path.GetFileName(fl) & vbCrLf)         Next     End Sub End Classто выдаёт ошибку исключения, типа не найден файл. Хотя, если вместо запуска процесса раздокументировать MsgBox, то полный путь выводит правильный. Проверял на вновьсозданной ссылке на раб.столе (типа может какой-нибудь символ не в той раскладке...).

  1. Здравствуйте, нужна помощь... Мне в цикле надо изменить у 6 PictureBox, которые имеют следующие названия ("MyCard1","MyCard2","MyCard3","MyCard4","MyCard5","MyCard6") картинку. Пытаюсь сделать так:vb.net1 Me.Controls("MyCard" & i).Image = Image.FromFile("Resources/" & cards(l, 1))Но он мне пишет такую ошибку ""Image" не является членом "System.Windows.Forms.Control"".Помогите кто сможет.

  1. Поискал, ничего не нашел что подошло бы. Вопрос такой: Есть несколько клиентов, у каждого клиента свои товары. Имена и ID клиентов хранятся в одной таблице, соответственно ID, артикул и наименование товара хранится в другой, объединяются по ID клиента. Есть два комбобокса, к одному подключен DataSet из вьюхи БД SQL с именами и ID клиента, отображаются только имена. через Combobox1.SelectedValue я получаю ID и присваиваю его переменной. На основании переменной я создаю sql запрос. Затем пытаюсь из этого запроса создать DataSet для заполнения второго комбобокса, чтобы уже из него получить ID товара.vb.net1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged         depID = ComboBox1.SelectedValue         Dim sql1 As String         sql1 = ("SELECT prdName, prdID from LVISION.dbo.V_Prod_Name where depID=" & depID)           Dim conn As SqlConnection = New SqlConnection         Dim da As SqlDataAdapter = New SqlDataAdapter()         Dim ds As New DataSet         conn = New SqlConnection("Data Source=lvs;Initial Catalog=LVISION;Integrated Security=True")         Dim cmd As SqlCommand = conn.CreateCommand()         cmd.CommandText = sql1         da.SelectCommand = cmd         conn.Open()         da.Fill(ds)         conn.Close()         ComboBox2.DataSource = ds         ComboBox2.DisplayMember = prdNameкороче комбобокс 2 не заполняется и соответствено ничего не отдает. С БД работаю давно, со связкой VB - БД только начал, поэтому опыта не много. Подскажите хоть в какую сторону рыть? Спасибо.

  1. Т.к. я не профессионал, прошу сразу не закидывать палками )) Проблема следующая, грубо говоря на форме преславутые зависимые ComboBox, первый заполняется при загрузке формы - был подключен не из кода, а визардом, второй должен заполняться в зависимости от выбора в первом следующим кодом:vb.net1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21         Dim connString As String         Dim oledbCnn As OleDbConnection         Dim oledbCmd As OleDbCommand         Dim sql As String         connString = ("Data Source=""E:\BD\Reglam.accdb"";user " & "id=Admin;Provider=""Microsoft.Jet.OLEDB.4.0"";")         sql = "SELECT NAIM_SUBYEKT from SUBYEKTY WHERE NUMBER_FO=('" & ComboBox1.SelectedValue & "')"         oledbCnn = New OleDbConnection(connString)         Try             oledbCnn.Open()             oledbCmd = New OleDbCommand(sql, oledbCnn)             Dim oledbReader As OleDbDataReader = oledbCmd.ExecuteReader()             ComboBox2.Items.Clear()             While oledbReader.Read                 ComboBox2.Items.Add(oledbReader.Item(1))             End While             oledbReader.Close()             oledbCmd.Dispose()             oledbCnn.Close()         Catch ex As Exception             MessageBox.Show(ComboBox1.SelectedValue)         End TryНо этого не происходит, т.е. он к базе не может подключиться, на этот случай есть MessageBox.Show(ComboBox1.SelectedValue), подскажите в чем дело пожалуйста...

  1. Задача стоит такая: При нажатии на кнопку необходимо выбранную перед этим запись в ComboBox сохранить в текстовый файл. При выборе последующих записей текстовый файл дописывать. Заранее спасибо!