- - PR -
[vb.net]TextBox + Combobox で DataGridViewComboBoxColumn.DataPropertyName と同様な機能を実装したい
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2007-12-04 20:47
ぉおぅ?
アドバイスに従い、もう一度 On*** でプロシージャ書いたらうまくいきました・・・ なんで最初うまくいかなかったんだろ もうそのときのコードが残ってないのでなんとも言えないですね
ComboBox を継承したクラスでは、TextBox に対する処理は入力チェックくらいしかしてません。 Me.FindForm で親になるフォームを拾って、 Form.Controls(追加したプロパティの値) があったら、 OnEnter なら、Me.SelectedValue = Form.Controls().Text、 OnValited なら、Form.Controls().Text = Me.SelectedValue としています。 せっかくなので、ソースも載せておきます。 ComboBox.SelectedIndex = "0" はつねに .SelectedValue = "0" 、.Text = " " とします。 おかしなところがあったら、教えてください # コメントは、今つけた適当なものです。
[ メッセージ編集済み 編集者: とある根性なし 編集日時 2007-12-04 21:04 ] [ メッセージ編集済み 編集者: とある根性なし 編集日時 2007-12-04 21:08 ] [ メッセージ編集済み 編集者: とある根性なし 編集日時 2007-12-05 21:18 ] [ メッセージ編集済み 編集者: とある根性なし 編集日時 2007-12-07 18:51 ] | ||||||||
|
投稿日時: 2007-12-05 09:18
なるほどなるほど、TextBox は別のコントロールとして DataPropertyName で連携させてたんですね。
理解できました^^; _________________ R・田中一郎 - R.Tanaka.Ichiro’s Blog | ||||||||
|
投稿日時: 2007-12-05 10:23
あ。
ちょっと応用して、DataPropertyName の示すコントロールの種類を判定して、 TextBox だったら従来どおりで、 ComboBox だったら SelectedValue にセットしたり (ニーズなさそうですけど、コードのComboBoxと名称のComboBox分けたりとか) できますね。 どなたかの参考になれば幸いです。 | ||||||||
|
投稿日時: 2007-12-05 21:11
私の(2007-12-04 20:47)のレスで提示したソースにバグがありました。
ご覧いただいた方、確認よろしくお願いします。 このレスで修正版を載せるか直接修正するか考えましたが、このような形にしました。 おかしければ教えてください。 次からは訂正します。 | ||||||||
|
投稿日時: 2007-12-07 19:02
たびたび申し訳ありませんが、
(2007-12-04 20:47)のソースを再度修正しました。 ご確認ください。 |