- PR -

DataGridのCheckBoxについて

1
投稿者投稿内容
195
会議室デビュー日: 2003/12/09
投稿数: 3
お住まい・勤務地: 新潟
投稿日時: 2003-12-09 21:29
初めまして、VB.NETのWINDOWSアプリケーションのDataGridコントロールについて
質問があります。

DataGridにDataGridBoolColumnを追加し
True/Falseで同列のある項目の入力可/不可の制御を行いたい。
.NET初心者で何が何だかわかりません。

@CheckBoxの値をどのイベントでどのように取得したらよいのか?
 現在行のCurrent情報でCheckBoxの値をみると前回値しかみれません。
 Validatedで確定しないと見れないのでしょうか?
↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑
 ちょっぴり勉強してみました…的外れかもしれませんが
 AddHandlerでDataGridBoolColumnのTrueValueChangedで
 イベントをひろうことも考えたのですが、どうも何かコーディングが
 間違えているのか、イベントが発生してくれません。
 Private myColumn As DataGridBoolColumn
 'DataGrid1の2項目目がチェック対象の項目です。
 myColumn = CType(DataGrid1.TableStyles("TBL").GridColumnStyles(2), _
           DataGridBoolColumn)
 AddHandler myColumn.TrueValueChanged, _
           AddressOf myDataGridBoolColumn_TrueValueChanged
 全くの的外れなんでしょうか…?

Aその値を元に他のColumnの入力制御をどのように設定したらよいのか?

いろいろと探しているのですが、見つけてもASP.NETだったり…
まずは以上の2点をどなたかご存知でしたら教えて下さい。
宜しくお願いします。

[ メッセージ編集済み 編集者: 195 編集日時 2003-12-10 16:00 ]

[ メッセージ編集済み 編集者: 195 編集日時 2003-12-10 17:31 ]

[ メッセージ編集済み 編集者: 195 編集日時 2003-12-10 17:32 ]
Jubei
ぬし
会議室デビュー日: 2002/03/02
投稿数: 830
お住まい・勤務地: 関西
投稿日時: 2003-12-11 14:49
こんにちわ。諸農です。

引用:

195さんの書き込み (2003-12-09 21:29) より:

 AddHandlerでDataGridBoolColumnのTrueValueChangedで
 イベントをひろうことも考えたのですが、どうも何かコーディングが
 間違えているのか、イベントが発生してくれません。



SDK HELPの「DataGridBoolColumn.TrueValueChanged イベント [Visual Basic]」にサンプルコードが掲載されていますね。
ms-help://MS.NETFrameworkSDKv1.1.JA/cpref/html/frlrfsystemwindowsformsdatagridboolcolumnclasstruevaluechangedtopic.htm

引用:

Aその値を元に他のColumnの入力制御をどのように設定したらよいのか?


難しいんではないでしょうか。
他の項目用のDataGridColumnStyleを作成して、
相互に連携させるとかですかねぇ。。。(^^

ではでは(^^)/

_________________
諸農和岳
Powered by Turbo Delphi & Microsoft Visual Studio 2005

十兵衛@わんくま同盟
http://blogs.wankuma.com/jubei/
195
会議室デビュー日: 2003/12/09
投稿数: 3
お住まい・勤務地: 新潟
投稿日時: 2003-12-11 15:35
Jubeiさん、早速のお返事ありがとうございます!

なんですが、再度聞いてもいいですか?
私の予想では実行時DataGrid内のCheckBox部分のTrue/Falseを変更すると
myDataGridBoolColumn_TrueValueChangedが呼び出されて
(内部的にはDebug.WriteLineしか入ってないのですが)
メッセージが出力される予定なのです。でも何も出力されません…。

'DataGrid1の3項目目(2項目目というのは嘘でした)がチェック対象の項目です。
 myColumn = CType(DataGrid1.TableStyles("TBL").GridColumnStyles(2), _
           DataGridBoolColumn)
の記述に問題があるのでしょうか?
myColumnがDataGrid1の3項目目と関連づいてないから反応がないのでしょうか?
それとも設定する順番に何か制約がありますか?

他のColumnの入力制御はDataGridColumnStyleを調べて見ます♪

わからない事ばかり苦労してます…
ご指導宜しくお願いします。
Jubei
ぬし
会議室デビュー日: 2002/03/02
投稿数: 830
お住まい・勤務地: 関西
投稿日時: 2003-12-11 19:52
こんにちわ。諸農です。

引用:

195さんの書き込み (2003-12-11 15:35) より:

私の予想では実行時DataGrid内のCheckBox部分のTrue/Falseを変更すると
myDataGridBoolColumn_TrueValueChangedが呼び出されて
(内部的にはDebug.WriteLineしか入ってないのですが)
メッセージが出力される予定なのです。でも何も出力されません…。



私、完全に勘違いをしていました。すみませんm(__)m

このイベントは、DataGridBoolColumn.TrueValueプロパティの値が
変更された時に呼び出されるものですね。
ですので、データ入力時の変更を検知するには、自前でDataGridBoolColumnの
派生クラスを作成してチェックする&イベントとしてアプリケーションに通知する
必要があるのかもしれません。
今はちょっと時間が無いので試せないのですが。。m(_ _)m

ではでは(^^)/
_________________
諸農和岳
Powered by Turbo Delphi & Microsoft Visual Studio 2005

十兵衛@わんくま同盟
http://blogs.wankuma.com/jubei/
195
会議室デビュー日: 2003/12/09
投稿数: 3
お住まい・勤務地: 新潟
投稿日時: 2003-12-12 09:25
おはようございます。195です。

折角Jubeiさんが色々と教えてくださったのですが、
やはり知識不足でできませんでした…。
この入力制御も含めて今回の課題は
時間を作って習得したいと思います!

その時はまた宜しくお願いします!
(シ_ _)シ  ハハァーー
1

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