2012-01-20 5 views
0

У меня есть простой GridViewгалочкой состояние внутри GridView

  <asp:GridView ID="GridView1" runat="server" DataKeyNames="OriginatorID" AutoGenerateColumns="False" 
      AllowPaging="True" OnPageIndexChanging="GridView1_PageIndexChanging" PageSize="5" 
      OnPreRender="GridView1_PreRender"> 
      <Columns> 
       <asp:TemplateField> 
        <ItemTemplate> 
         <asp:CheckBox ID="CheckBox1" runat="server" /> 
        </ItemTemplate> 
       </asp:TemplateField> 
       <asp:BoundField DataField="Originator" HeaderText="Originator" /> 
      </Columns> 
     </asp:GridView> 

Я звоню следующий код внутри GridView1_PageIndexChanging события

 foreach (GridViewRow item in GridView1.Rows) 
     { 
      try 
      { 
       if (item.RowType == DataControlRowType.DataRow) 
       { 
        CheckBox chk = (CheckBox)(item.Cells[0].FindControl("CheckBox1")); 

        // chk.checked will access the checkbox state on button click event 
        if (chk.Checked) 
        { 
         //code if checked 
        } 
        else 
        { 

        } 
       } 

      } 
      catch (Exception ex) 
      { 
       throw ex; 
      } 
     } 

проблема, если выбрать флажок и выбрать следующую страницу на GridView это никогда не выполняйте код внутри

if (chk.Checked) 

, хотя я проверил chekBoxe s оно не получает их состояние как проверено.

Почему это могло случиться?

+0

вы отлажены должны видеть получает 'ли chk' назначен контроль? «FindControl» возвращает «CheckBox»? Я не проверял, но, возможно, сгенерированное имя для 'CheckBox1' может не быть * CheckBox1 *. Попробуйте 'FindControl' с' CheckBox1.ClientID' –

ответ

3

Попробуйте следующее:

Проверить ПОГОДА вы поставили код для привязки данных к GridView в

If (!IsPostBack) 
{ 
    //Code for Binding Data to GridView 
} 
1

мои fault.i не сделали следующий метод

if (!Page.IsPostBack) 
      { 

       Binddata();//Bind data to gridview 
      } 

ранее Binddata() не был внутри

если (! Page.IsPostBack)

, который был вызвав вопрос

Смежные вопросы