- PR -

DataGrid+CheckBoxでCheckBoxの値が取れない

1
投稿者投稿内容
moondog
大ベテラン
会議室デビュー日: 2003/04/11
投稿数: 165
投稿日時: 2003-09-18 10:02
お久でございます。

DataGridに配置したCheckBoxの値(True/False)が取れなくなって困っています。

というのも,テストを繰り返しているうちに当該フォーム(Form.aspx)
に配置していたRadioButtonやらButtonやらがエラー(内容は失念)
でフォーム上から消失してしまい、仕方なくバックアップしていた何世代か前の
フォームに置き換えました。(Form.aspx.vbはそのまま)

具体的なコードは下記の通りです。

Dim myDataGridItem As DataGridItem
Dim chkSelected As System.Web.UI.WebControls.CheckBox

For Each myDataGridItem In DataGrid.Items
  chkSelected = myDataGridItem.FindControl("CheckBox1")
  If chkSelected.Checked Then
    …
  Else
    …
  End If
Next

トレースをかけてみたところ、常にFalseを返します。

尚、下記のようなコードでプログラム内部でCheckBoxをON/OFF
することは実現できています。

For Each myDataGridItem In GridData.Items
  If … Then
    chkSelected = myDataGridItem.FindControl("CheckBox1")           chkSelected.Checked = True
  Else
    chkSelected = myDataGridItem.FindControl("CheckBox1")
    chkSelected.Checked = False
  End If
Next

ちなみに、DataGrid、CheckBoxのプロパティは下記のようになっています。

(DataGrid)
EnableViewState:False

(CheckBox)
Checked:False
AutoPostBack:False
Enabled:True
EnableViewState:True
DataBindings:未設定

DataBindingsの連結可能プロパティにCheckedを指定して
単純連結なりカスタム連結式に何か指定すれば取れるのでしょうか?

以前、正常に動いていた時には設定してませんでしたが…

以上、ご教示のほど宜しくお願い致します。
moondog
大ベテラン
会議室デビュー日: 2003/04/11
投稿数: 165
投稿日時: 2003-09-18 11:29
http://support.microsoft.com/default.aspx?scid=kb;ja;306227#3

にある手順に沿ってやってみたんですが、

ユーザー インターフェイス (UI) と TemplateColumn オブジェクトを使用してチェックボックスを DataGrid Web コントロールに追加する方法



列テンプレート を編集し、データセットに連結します。



4.[単純連結] で、 [Container]、[DataItem] の順に展開し、[Contract] をクリックして [OK] をクリックします。

のDataItemにContractが含まれてないので連結しようがないんです。^^;

どうしてなんでしょうか?
1

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