2 つのコンボボックスがあり、それぞれが次のように同じ DataTable にバインドされています。
channelTypeCB.DataSource = SynergyData.ds.Tables["ChannelTypes"];
channelTypeCB.DisplayMember = "channelType";
channelTypeCB.ValueMember = "channelTypeID";
channelTypeCB.BindingContext = new BindingContext();
newSKChanTypeCB.DataSource = SynergyData.ds.Tables["ChannelTypes"];
newSKChanTypeCB.DisplayMember = "channelType";
newSKChanTypeCB.ValueMember = "channelTypeID";
newSKChanTypeCB.BindingContext = new BindingContext();
ボタンをクリックしてレコードをデータベースに挿入するときに、channelType.SelectedValue... を使用すると、間違った値が返されます。ComboBox ソート (デザイン ビューのコントロールのプロパティで設定) の使用と関係があると感じています。誰かがこの問題に遭遇しましたか?
これは、C# を使用して winforms アプリケーション用にプログラムされています。
編集:
たとえば、私の Datatable には次のような値が格納されます。
channelType channelTypeID Web 2 Mailer 3 Catalog 4
これはコンボボックスでソートされ、最初の項目 (ソートすると「カタログ」になります) を選択すると、SelectedValue は 2 を返し、2 番目の項目を選択すると 3 を返します...リターン 4