Вы хотите, чтобы первый >
, которому не предшествовал /
. Посмотрите здесь , чтобы узнать, как это сделать.
Однако наивная реализация этого приведет к сопоставлению
в этом примере документа
Можете ли вы предоставить немного больше информации о проблема, которую вы пытаетесь решить? Вы выполняете итерацию через теги программно?
При назначении сложного объекта как DataTable
свойству DataSource элементов управления ComboBox или ListBox укажите, используя свойство DisplayMember , которое Column
[ 1122] объекта DataTable следует использовать в качестве источника для отображения текста элементов ListControl.
Если выбранный элемент также должен возвращать значение, отличное от отображаемого текста, также установите для свойства ValueMember имя столбца, предоставляющего связанные значения.
Возможно, до установки ссылки на источник данных элемента управления (чтобы избежать избыточных итераций базовых данных).
Давайте создадим DataTable
для проверки процедуры:
Назначьте DataTable
для DataSource
элемента управления ComboBox, указав в качестве DisplayMember
имя столбца, который предоставляет текст отображать и как ValueMember
имя столбца, который предоставляет дополнительные данные, которые будут возвращены свойством ComboBox.SelectedValue
при изменении пользователем SelectedItem
:
Dim dt As New DataTable("TestTable")
dt.Columns.AddRange({
New DataColumn("Names", GetType(String)),
New DataColumn("Values", GetType(Integer))
})
Dim row As DataRow = dt.NewRow()
row.ItemArray = New Object() {"Some Name", 1}
dt.Rows.Add(row)
row = dt.NewRow()
row.ItemArray = New Object() {"Some OtherName Jr.", 2}
dt.Rows.Add(row)
row = dt.NewRow()
row.ItemArray = New Object() {"Another Name", 3}
dt.Rows.Add(row)
row = dt.NewRow()
row.ItemArray = New Object() {"Last Name", 4}
dt.Rows.Add(row)
ComboBox1.DisplayMember = "Names"
ComboBox1.ValueMember = "Values"
ComboBox1.DataSource = dt.DefaultView
Private Sub ComboBox1_SelectionChangeCommitted(sender As Object, e As EventArgs) Handles ComboBox1.SelectionChangeCommitted
Dim cbo = DirectCast(sender, ComboBox)
TextBox1.Text = cbo.GetItemText(cbo.SelectedValue)
End Sub
Результат: