2009-05-14 2 views
0

Как и в названии, я пытаюсь заполнить столбец со списком в datagridview.заполнение столбца столбца столбца datagridview с subsonic & vb.net

Вот что я до сих пор:

Dim lc As System.Web.UI.WebControls.ListItemCollection = _ 
    DataAccess.Part.GetListItems() 

dgvcboPart.DataSource = lc 

' This is a standalone combo box and it works ok 
cboTest.DataSource = lc 

Любые предложения о том, что я не хватает?

Благодаря Тони W

ответ

0

Я первый предлагаю вам связать свою коллекцию на BindingSource, а затем добавьте BindingSource в DataGridView (так что вы знаете позицию)

Но привязки ComboBoxCell должна быть в значительной степени прямо вперед.

Допустим, у вас есть тег данных TattCount, содержащий два столбца Id и Name. Вы должны связать это с вашим колонком (я предполагаю, что столбец 0 IST вашего DataGridViewColumn)

 dgvcboPart.Columns(0).DataSource = tblCurrency 
    dgvcboPart.Columns(0).ValueMember = "Id" 
    dgvcboPart.Columns(0).DisplayMember = "Name" 

Затем вы можете установить DataPropertyName к недвижимости в вашем DataSource.

 dgvcboPart.Columns(0).DataPropertyName = "Currency_Id" 

Be carful, tblCurrency.Id и Currency_Id должны быть того же типа (Int32 и UInt32 не работает), и вы получите неприятный MessageBox с полным StackTrace если Currency_Id имеет значение, которое не в tblCurrency (так что вы должны обрабатывать событие DataError)

0
dgvcboPart.DataSource = lc 
dgvcboPart.DataBind() 

должны вызвать DataBind метод магия случиться!

+0

Winforms, а не asp.net. поэтому «DataBind» не является членом «System.Windows.Forms.DataGridViewComboBoxColumn». Спасибо, хотя –

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