2015-05-06 5 views
0

Я создал Combobox, и выбор списка заполняется DataTable. Я могу заполнить его без проблем, но мне нужно добавить элемент по умолчанию для списка до появления результатов из DataTable.Как вручную вставить элемент в VB.net Combobox?

Список должен содержать:

All Rooms and Facilities 
Class Room 
Laboratory 
PE Facility 
THE Facility 
Drawing Room 
Library 

Но я всегда получаю:

enter image description here

Я использую эту ссылку как мои ресурсы: https://msdn.microsoft.com/en-us/library/aa983551.aspx

И вот мой код:

cboByRoomType.Items.Insert(0, "All Rooms and Facilities") 
With cboByRoomType 
    .DataSource = tempDTRoomType 
    .DisplayMember = "Description" 
    .ValueMember = "Room Type ID" 
    .SelectedIndex = 0 
End With 

Кроме того, я уже пытался добавить элемент по умолчанию, используя Элементы в Properties Window, но все равно ничего хорошего.

+0

Связывание нового источника (.DataSource = Foo) удаляет все ранее инициализированы элементы. – cdkMoose

ответ

1

Попробуйте заменить свой первый ряд с этим (что, вероятно, имеет более компактную форму):

tempDTRoomType.Rows.InsertAt(tempDTRoomType.NewRow(), 0) 
    tempDTRoomType.Rows(0).Item("Description") = "All Rooms and Facilities" 
    tempDTRoomType.Rows(0).Item("Room Type ID") = 0 
+0

Да, это решает. Большое спасибо! –

+1

Отлично! Дело в том, что вы хотите добавить запись в базовый источник данных, прежде чем привязываться к элементу управления, вместо того, чтобы пытаться изменить контроль привязки данных. – clweeks

Смежные вопросы