|
●VB.Net Version 2002 起きた条件と現象 @コンボボックスが主キー順の場合。 ・Me.cboFieldID.Text="" の場合。 Me.cboFieldID.Text:"既存の値" Me.cboFieldID.SelectedValue:"既存の主キー値" Me.cboFieldID.SelectedText:""(空白) Me.cboFieldID.SelectedIndex:"既存の主キーインデックス(表示何件目か)"
・Me.cboFieldID.Text=Nothing の場合。 値が最初の主キー値でない場合。 Me.cboFieldID.Text:"最初のデータ" (空白) Me.cboFieldID.SelectedValue:"最初の主キー値" Me.cboFieldID.SelectedText:"" Me.cboFieldID.SelectedIndex:-1 値が最初の主キー値である場合。 Me.cboFieldID.Text:"" (空白) Me.cboFieldID.SelectedValue:""(空白) Me.cboFieldID.SelectedText:""(空白) Me.cboFieldID.SelectedIndex:-1
・Me.cboFieldID.SelectedIndex=-1 の場合。 値が最初の主キー値でない場合。 Me.cboFieldID.Text:"最初のデータ" (空白) Me.cboFieldID.SelectedValue:"最初の主キー値" Me.cboFieldID.SelectedText:"" Me.cboFieldID.SelectedIndex:-1 値が最初の主キー値である場合。 Me.cboFieldID.Text:"" (空白) Me.cboFieldID.SelectedValue:""(空白) Me.cboFieldID.SelectedText:""(空白) Me.cboFieldID.SelectedIndex:-1
Aコンボボックスが主キー順でなく他列の並び順の場合。 ・Me.cboFieldID.Text="" のみの場合。 Me.cboFieldID.Text:"既存の値" Me.cboFieldID.SelectedValue:"既存の主キー値" Me.cboFieldID.SelectedText:""(空白) Me.cboFieldID.SelectedIndex:"既存の主キーインデックス(表示何件目か)"
・Me.cboFieldID.Text=Nothing の場合。 値が最初の主キー値でない場合。 Me.cboFieldID.Text:"最初のデータ" (空白) Me.cboFieldID.SelectedValue:"最初の主キー値" Me.cboFieldID.SelectedText:"" Me.cboFieldID.SelectedIndex:-1 値が最初の主キー値である場合。 Me.cboFieldID.Text:"" (空白) Me.cboFieldID.SelectedValue:""(空白) Me.cboFieldID.SelectedText:""(空白) Me.cboFieldID.SelectedIndex:-1
・Me.cboFieldID.SelectedIndex=-1 の場合。 値が最初の主キー値でない場合。 Me.cboFieldID.Text:"最初のデータ" (空白) Me.cboFieldID.SelectedValue:"最初の主キー値" Me.cboFieldID.SelectedText:"" Me.cboFieldID.SelectedIndex:-1 値が最初の主キー値である場合。 Me.cboFieldID.Text:"" (空白) Me.cboFieldID.SelectedValue:""(空白) Me.cboFieldID.SelectedText:""(空白) Me.cboFieldID.SelectedIndex:-1
解決策 Me.cboFieldID.Text="" 却下 Me.cboFieldID.Text=Nothing を2回記述 Me.cboFieldID.SelectedIndex=-1 を2回記述 あるいは Me.cboFieldID.Text=Nothing Me.cboFieldID.SelectedIndex=-1
●VC.Net Version 2002 これのみだと、 コンボボックスの最初のデータが表示されます。 ※主キー最小値でなく、Order Byで並べ替えされた場合の最初の値。
起きた条件と現象 @コンボボックスの並び順が主キー順でなかった。 A主キー値に0の数値が存在するとそこを表示してしまう。
●VC.Net 起きた条件と現象 @コンボボックスが主キー順の場合。 ・this.cboFieldID.Text=""; の場合。 値が最初の主キー値でない場合。 this.cboFieldID.Text:"既存の値" this.cboFieldID.SelectedValue:"既存の主キー値" this.cboFieldID.SelectedText:""(空白) this.cboFieldID.SelectedIndex:"既存の主キーインデックス(表示何件目か)" 値が最初の主キー値である場合。 this.cboFieldID.Text:"" (空白) this.cboFieldID.SelectedValue:""(空白) this.cboFieldID.SelectedText:""(空白) this.cboFieldID.SelectedIndex:-1
・this.cboFieldID.Text=null; の場合。 値が最初の主キー値でない場合。 this.cboFieldID.Text:"最初のデータ" (空白) this.cboFieldID.SelectedValue:"最初の主キー値" this.cboFieldID.SelectedText:"" this.cboFieldID.SelectedIndex:-1 値が最初の主キー値である場合。 this.cboFieldID.Text:"" (空白) this.cboFieldID.SelectedValue:""(空白) this.cboFieldID.SelectedText:""(空白) this.cboFieldID.SelectedIndex:-1
・this.cboFieldID.SelectedIndex=-1; の場合。 値が最初の主キー値でない場合。 this.cboFieldID.Text:"最初のデータ" (空白) this.cboFieldID.SelectedValue:"最初の主キー値" this.cboFieldID.SelectedText:"" this.cboFieldID.SelectedIndex:-1 値が最初の主キー値である場合。 this.cboFieldID.Text:"" (空白) this.cboFieldID.SelectedValue:""(空白) this.cboFieldID.SelectedText:""(空白) this.cboFieldID.SelectedIndex:-1
Aコンボボックスが主キー順でなく他列の並び順の場合。 ・this.cboFieldID.Text=""; のみの場合。 this.cboFieldID.Text:"既存の値" this.cboFieldID.SelectedValue:"既存の主キー値" this.cboFieldID.SelectedText:""(空白) this.cboFieldID.SelectedIndex:"既存の主キーインデックス(表示何件目か)"
・this.cboFieldID.Text=null; の場合。 値が最初の主キー値でない場合。 this.cboFieldID.Text:"最初のデータ" (空白) this.cboFieldID.SelectedValue:"最初の主キー値" this.cboFieldID.SelectedText:"" this.cboFieldID.SelectedIndex:-1 値が最初の主キー値である場合。 this.cboFieldID.Text:"" (空白) this.cboFieldID.SelectedValue:""(空白) this.cboFieldID.SelectedText:""(空白) this.cboFieldID.SelectedIndex:-1
・this.cboFieldID.SelectedIndex=-1; の場合。 値が最初の主キー値でない場合。 this.cboFieldID.Text:"最初のデータ" (空白) this.cboFieldID.SelectedValue:"最初の主キー値" this.cboFieldID.SelectedText:"" this.cboFieldID.SelectedIndex:-1 値が最初の主キー値である場合。 this.cboFieldID.Text:"" (空白) this.cboFieldID.SelectedValue:""(空白) this.cboFieldID.SelectedText:""(空白) this.cboFieldID.SelectedIndex:-1
解決策 this.cboFieldID.Text=""; 却下 this.cboFieldID.Text=null; を2回 this.cboFieldID.SelectedIndex=-1; を2回 あるいは、 this.cboFieldID.Text=Nothing; this.cboFieldID.SelectedIndex=-1;
■No38014 (stand By Me さん) に返信 > 返信いたします。 > VB.Netでは再度検証後、起きないことが確認できています。 > ですが、 > C#.Netではその現象が一部起きています。 > 動的に値リストを表示しているものに関しては、 > 値が選択されていない場合は起きず、選択済の場合に > その現象が起きているようです。 > が、まだ検証を続けます。 > 本日は一時中断します。 > ありがとうございます。 > > > ■No38010 (やじゅ さん) に返信 >>■No38003 (Stand by me さん) に返信 > >>>this.cboFieldID.SelectedIndex = -1; とか > >>実は・・・そこで悩んでいるのですが、 > >>コンボボックスを動的にデータベースのテーブルの値を表示してるのですが、 > >>this.cboFieldID.SelectedIndex = -1; > >>だと、値リストの一番最初のデータを表示してしまいます。 >> >>そうはならないはずですが・・・ >>コードを提示してみてはどうでしょう?
|