前提・実現したいこと
Windows Forms のアプリケーションに
DataRepeaterを使用して開発しています。
DataRepeater上に、
TextboxやLabelを配置しているのですが、
他のコントロールをクリックすると、
TextBoxの入力値が消える現象が発生しました。
開発環境
- Windows 10 Pro
- Microsoft Visual Basic 2015(Visual Studio Professional 2015)
- Microsoft Visual Basic Power Packs Vs10.0.0.0
- .NET Framework 4.5.1
- Windows フォーム アプリケーション
発生状況
- TextBoxに文字を入力
- 他の行のラベルをクリック
- TextBoxの文字が消える
DataRepeaterは、6レコード表示していますが、
この現象は、1行目だけでなく、別の行でも発生します。
1-2の操作を何回か繰り返したところ、
入力値が保持されたり、保持されなかったり
不規則な動きになります。
該当のソースコード
下記、txtCommentに入力した値が、消えてしまいます。
VB
1'Datarepeaterの表示処理 2 Private Function InitHelpData() 3 Dim StrSQL As String = "" 4 Dim ds As DataSet = Nothing 5 6 StrSQL = GetSQL() 'SQL取得 7 8 ds = AccessData.selectBySQL(StrSQL) 'DataSet取得 9 10 If ds.Tables(0).Rows.Count > 0 Then 11 BindingSource1.DataSource = ds.Tables(0) 12 13 'DataRepeater1の設定 14 Me.lblHelpCD.DataBindings.Add("Text", BindingSource1, "HelpCD", True, DataSourceUpdateMode.OnPropertyChanged, DBNull.Value) 15 Me.txtHelpSummary.DataBindings.Add("Text", BindingSource1, "Help", True, DataSourceUpdateMode.OnPropertyChanged, DBNull.Value) 16 Me.txtComment.DataBindings.Add("Text", BindingSource1, "Comment", True, DataSourceUpdateMode.OnPropertyChanged, DBNull.Value) 17 18 DataRepeater1.DataSource = BindingSource1 19 End If 20 21 ds.Dispose() 22 InitCheckData = True 23 End Function
試したこと1
- Labelのクリックイベントをステップ実行
→txtCommentの値を削除する処理はない。
Labelのクリックイベントで、
LabelのBackColorを変更する処理をしているが、
Labelの色が変わった瞬間、txtCommentの値が消える。
DataRepeater コントロールの概要 (Visual Studio)
こちらを元に、試行錯誤していますが、解決できません。
どなたかご教示いただけますでしょうか。
あなたの回答
tips
プレビュー