- PR -

GridViewのチェックボックスの選択判定について

1
投稿者投稿内容
青森
会議室デビュー日: 2007/05/27
投稿数: 16
投稿日時: 2007-06-04 23:18
ASP.NET2.0 + C#で開発をしています。
GridView上のチェックボックスの押下を取得したいのですが、とれません。。。
どなたかご指摘下さい。

XX.ASPX
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="XX" Checked="false" runat="server"/>
</ItemTemplate>
<asp:TemplateField>

XX.ASPS.CS
protected void BUTTON_CLICK(object sender,EventArgs e)
{
int j = GridViewXX.Rows.Count
for(int i=0;i<j;i++){
GridViewRow row = GridViewXX.Rows[i];
Control ctl = row.Cells[0].Control[1];//一列目にCheckBox
CheckBox chb = (CheckBox)ctl.FindControl("XX")
//自動変数で内容を確認すると{Text='''' Checked=false}となりチェックされてません。
}
}
Access
ぬし
会議室デビュー日: 2002/04/08
投稿数: 829
投稿日時: 2007-06-05 05:52
こんな感じに修正すると動作するかと・・・

コード:

GridViewRow row = GridViewXX.Rows[i];
CheckBox chb = (CheckBox)row.FindControl("XX");




_________________
ASP.NET+Ajaxサンプル集

[ メッセージ編集済み 編集者: Access 編集日時 2007-06-05 05:53 ]
青森
会議室デビュー日: 2007/05/27
投稿数: 16
投稿日時: 2007-06-06 00:19
Accessさん お返事ありがとうございます。

試してみたのですが、同じ結果です。
FindControlで指定したIDのコントロール(CheckBox)は取れているのですが
Checkedはすべてfalseとなってしまいいます。。。
Access
ぬし
会議室デビュー日: 2002/04/08
投稿数: 829
投稿日時: 2007-06-06 06:12
CheckBoxをチェックする前にGridViewを再度バインドしていませんか。


このサンプルを参考にしてください:
http://www.ajax-asp.dev-asp.net/Goto.aspx?id=070606CS-1
_________________
ASP.NET+Ajaxサンプル集 | JavaScript+Ajaxサンプル集
青森
会議室デビュー日: 2007/05/27
投稿数: 16
投稿日時: 2007-06-07 02:03
Accessさん、度々のご回答ありがとうございます。

教えて頂きましたURLのSourceをみたところ、同じです。
違いはaspx.csファイルにボタンクリックのコーディングがある事くらいです。

なお、CheckBoxへチェック後にボタン押下(チェック判定のみ)すると、POSTBACK後の画面再描画時にはチェックがはずれています。。。

かるあ
ぬし
会議室デビュー日: 2003/11/16
投稿数: 1190
お住まい・勤務地: センガワ→ムサシノ
投稿日時: 2007-06-07 07:44
Page_Load と IsPostBack ?って少し前にもこんなコメントをしたような。。。
Button_Click の前に Page_Load で毎回 GridView を作っていませんか?
_________________
かるあ のメモスニペット
Access
ぬし
会議室デビュー日: 2002/04/08
投稿数: 829
投稿日時: 2007-06-07 10:19
引用:

教えて頂きましたURLのSourceをみたところ、同じです。
違いはaspx.csファイルにボタンクリックのコーディングがある事くらいです。


ソースコードを添付していただいた方が早く解決するかも?
_________________
ASP.NET+Ajaxサンプル集 | JavaScript+Ajaxサンプル集
青森
会議室デビュー日: 2007/05/27
投稿数: 16
投稿日時: 2007-06-08 03:17
かるあさんへ
>Button_Click の前に Page_Load で毎回 GridView を作っていませんか?
ご指摘ありがとうございます。
出先で確認できないのですが、確かやってました。
そこで自爆してのですね。。。

Accessさんへ
度々のご返事ありがとうございます。
かるあさんの指摘で確認してみて、直らない場合にSourceを添付させて下さい。
1

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