- PR -

リストボックスにDataSourceを設定したときの不具合

1
投稿者投稿内容
ゆき
会議室デビュー日: 2003/06/12
投稿数: 2
投稿日時: 2005-07-14 16:50
リストボックスにDataSourceを指定し、
SelectionModeプロパティに「MultiExtended」を設定します。
その状態で以下の手順にて操作を行った場合、自動でリストボックスの一番上の項目が
フォーカスがセットされる現象が発生しております。
1. 実行時、クリックにてリストボックスの2番目以降の項目を選択。
2. @にて選択したものを「Ctrl」+クリックで選択状態を解除。

2.を実行後、リストボックスの一番上の項目が自動で選択されてしまいます。
実際にはフォーカスのみ、2.でクリックしたところに残し、全て非選択状態としたいと考えております。
この現象の回避策、対応策をご存知の方がいらっしゃいましたら
ご教授お願いします。


以下、ソースになります。
+----------------------------------------------------------------------
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

Dim iCnt As Int32
Dim dt As DataTable

Me.ListBox1.SelectionMode = SelectionMode.MultiExtended

'コンボボックスにバインドするデータテーブルを構築
dt = New DataTable
dt.Columns.Add("No1", GetType(Int32))
dt.Columns.Add("No2", GetType(Int32))
dt.Columns.Add("No3", GetType(String))

For iCnt = 1 To 30
Dim row As DataRow = dt.NewRow
row(0) = iCnt
row(1) = iCnt + 1
row(2) = iCnt + 2
dt.Rows.Add(row)
Next

dt.AcceptChanges()
ListBox1.DataSource = dt
ListBox1.DisplayMember = "No1"
ListBox1.ValueMember = "No1"
ListBox1.EndUpdate()

End Sub


以上、宜しくお願い致します。
ゆき
会議室デビュー日: 2003/06/12
投稿数: 2
投稿日時: 2005-07-14 17:41
申し訳ありません。
環境を記述し忘れました。
開発環境はVB.NETで、
OSはWinXP SP1となります。
1

スキルアップ/キャリアアップ(JOB@IT)