亜音速&vb.netでDataGridViewのコンボボックス列を移入
-
21-08-2019 - |
質問
タイトルのように、私はDataGridViewのコンボボックス列を移入しようとしている、と言います。
ここで私がこれまで持っているものです。
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
解決
私は(あなたが位置を知っている)最初のあなたはのBindingSourceにあなたのコレクションをバインド示唆し、その後のDataGridViewにのBindingSourceを追加します。
しかしComboBoxCellはかなりまっすぐ進むべきである結合ます。
あなたは2列IDと名前を含むDataTableのtblCurrencyがあるとしましょう。 あなたは(私はあなたのDataGridViewColumn IST列0を仮定)あなたの列にこれをバインドする必要があります。
dgvcboPart.Columns(0).DataSource = tblCurrency
dgvcboPart.Columns(0).ValueMember = "Id"
dgvcboPart.Columns(0).DisplayMember = "Name"
次に、あなたのデータソース内のプロパティにDataPropertyNameを設定することができます。
dgvcboPart.Columns(0).DataPropertyName = "Currency_Id"
carfulて、tblCurrency.IdとCurrency_Idは同じタイプである必要(のInt32とUInt32型が動作しない)とCurrency_Idは(あなたがする必要がありますのでtblCurrencyではない値を持っている場合は、フルのStackTraceと厄介なメッセージボックスを取得しますDataErrorイベントを処理する)
他のヒント
dgvcboPart.DataSource = lc
dgvcboPart.DataBind()
マジックが起こることをするためにDataBindメソッドを呼び出す必要があります!
所属していません StackOverflow