1

私のウィンドウ フォームには、Categories バインディング ソースにバインドされた 1 つのコンボボックスと、Products バインディング ソースにバインドされた 1 つのデータグリッドが含まれています。フォームをロードすると、コンボボックスは Products テーブルで選択された値ではなく、category テーブルの最初の値を表示し、Products バインディングソースで位置を変更すると、コンボボックスで正しい selectedValue を取得できます (正しい値が表示されます)。だから私の問題は、コンボボックス項目の最初のロードにあります。

マイコンボのプロパティ:

データソース = カテゴリバインディングソース

表示メンバー = カテゴリ名

値メンバー = CategoryID

選択された値 = productBindingSource – CategoryID

そして、ここに私のコードがあります:

NorthwindDataContext dc;
private void Form1_Load(object sender, EventArgs e)
{
    dc = new NorthwindDataContext();
    productBindingSource.DataSource = dc.Products;

    this.categoryIDComboBox.DataSource = dc.Categories;
}
4

1 に答える 1

1

コンボボックスとデータグリッドの初期化の順序を逆にしてみてください

NorthwindDataContext dc; 
private void Form1_Load(object sender, EventArgs e) 
{ 
    dc = new NorthwindDataContext(); 
    this.categoryIDComboBox.DataSource = dc.Categories; 
    productBindingSource.DataSource = dc.Products; 
} 
于 2012-07-01T13:26:55.953 に答える