TextChangeイベントで
- 題名: TextChangeイベントで
- 著者: シュナイダー
- 日時: 2006/03/30 9:55:04
- ID: 15115
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[1]: TextChangeイベントで
- 著者: なおこ(・∀・)
- 日時: 2006/03/30 14:57:25
- ID: 15120
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[2]: TextChangeイベントで
- 著者: シュナイダー
- 日時: 2006/03/30 16:57:34
- ID: 15124
- この記事の返信元:
- この記事への返信:
- ツリーを表示
分類:[.NET]
DataGridのカラムが変更されたら"変更しました"という表示をするように
今開発しています。
↓のような事を試したのですが、うまく作動しません。
DataGridのカラムでTextChangeイベントを生成し、そこのカラムに変更があった行に("変更"というカラム)"変更ありました"という表示をするようにしています。
-----------------------------------------------------------------------
'' カラム対象のカラム
Dim DGTS_1 As DataGridTableStyle = DataGrid.TableStyles(0)
Dim DGTC_1 As DataGridTextBoxColumn = DGTS_1.GridColumnStyles("カラム1")
Dim TB_1 AS TextBox = DGTC_1.TextBox
AddHandler TB_1.TextChanged, AddressOf DataGrid_TextChanged
-----------------------------------------------------------------------
'' 変更された行
Private Sub DataGrid_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs)
'' 変更ありましたの設定
DataView1(DataGrid.CurrentRowIndex).Item("変更") = "変更ありました"
End Sub
↑で実行したところ、カラム1に値を変更したら、変更カラムに"変更ありました"
は、表示されます。
ですが、カーソルを下行に移すと、変更していないのにそこの行の変更カラムに"変更ありました"が表示されてしまいます。
カラム1が変更した行だけを設定するにはどうしたらいいでしょうか?
アドバイスをお願いします。
※DataRowState.Modifiedは理由があって使用できません。