title: CheckBox! Specified cast is not valid
body: <p>i had this error: <strong>specified cast is not valid</strong> when i try to add a new row to my grid that contain a itemtemplate checkbox as shown below. Whenever i use the word "Checked" instead of "Text", the error is shown. But what i want to do is to show the checkbox "checked" when my "choiceQn" is true and not show the "true" next to my checkbox. Please help me out if you can solve my problem.</p>
  
  <p><strong>ASP.NET</strong></p>
  
  <pre><code> &lt;ItemTemplate&gt;
       &lt;asp:CheckBox ID="ChoiceCheckBox" runat="server" **Checked**='&lt;%# Bind("ChoiceQn") %&gt;'/&gt;
   &lt;/ItemTemplate&gt;
  </code></pre>
  
  <p><strong>C#</strong></p>
  
  <pre><code>    private void AddNewRowToGrid()
      {
          int rowIndex = 0;
          if (ViewState["CurrentTable"] != null)
          {
              DataTable dtCurrentTable = (DataTable)ViewState["CurrentTable"];
              DataRow drCurrentRow = null;
  
              if (dtCurrentTable.Rows.Count &gt; 0)
              {
                  for (int i = 1; i &lt;= dtCurrentTable.Rows.Count; i++)
                  {
                      TextBox box1 = (TextBox)UpdateQuestionGrid.Rows[rowIndex].Cells[0].FindControl("QuestionsTbx");
  
                      drCurrentRow = dtCurrentTable.NewRow();
                      drCurrentRow["QuestionId"] = i + 1;
                      drCurrentRow["Question"] = "";
                      drCurrentRow["ChoiceQn"] = false;
                      rowIndex++;
                  }
  
                  //add new row to DataTable
                  dtCurrentTable.Rows.Add(drCurrentRow);
  
                  //Store the current data to ViewState
                  ViewState["CurrentTable"] = dtCurrentTable;
  
                  //Rebind the Grid with the current data
                  UpdateQuestionGrid.DataSource = dtCurrentTable;
                  UpdateQuestionGrid.DataBind();
              }
          }
          else
          {
              Response.Write("ViewState is null");
          }
  
          //Set Previous Data on Postbacks
          //SetPreviousData();
      }
  </code></pre>
  
  <p><strong>Stack Trace:</strong></p>
  
  <pre><code>[InvalidCastException: Specified cast is not valid.]
     ASP.asc_questionupdate_aspx.__DataBinding__control15(Object sender, EventArgs e) in f:\ASC_FeedbackSystem(latest)\ASC_FeedbackSystem\asc\questionupdate.aspx:26
     System.Web.UI.Control.OnDataBinding(EventArgs e) +99
     System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding) +92
     System.Web.UI.Control.DataBind() +15
     System.Web.UI.Control.DataBindChildren() +211
     System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding) +102
     System.Web.UI.Control.DataBind() +15
     System.Web.UI.Control.DataBindChildren() +211
     System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding) +102
     System.Web.UI.Control.DataBind() +15
     System.Web.UI.WebControls.GridView.CreateRow(Int32 rowIndex, Int32 dataSourceIndex, DataControlRowType rowType, DataControlRowState rowState, Boolean dataBind, Object dataItem, DataControlField[] fields, TableRowCollection rows, PagedDataSource pagedDataSource) +155
     System.Web.UI.WebControls.GridView.CreateChildControls(IEnumerable dataSource, Boolean dataBinding) +2417
     System.Web.UI.WebControls.CompositeDataBoundControl.PerformDataBinding(IEnumerable data) +57
     System.Web.UI.WebControls.GridView.PerformDataBinding(IEnumerable data) +14
     System.Web.UI.WebControls.DataBoundControl.OnDataSourceViewSelectCallback(IEnumerable data) +114
     System.Web.UI.DataSourceView.Select(DataSourceSelectArguments arguments, DataSourceViewSelectCallback callback) +31
     System.Web.UI.WebControls.DataBoundControl.PerformSelect() +142
     System.Web.UI.WebControls.BaseDataBoundControl.DataBind() +73
     System.Web.UI.WebControls.GridView.DataBind() +4
     ASC_FeedbackSystem.questionupdate.AddNewRowToGrid() in F:\ASC_FeedbackSystem(latest)\ASC_FeedbackSystem\asc\questionupdate.aspx.cs:108
     ASC_FeedbackSystem.questionupdate.ButtonAdd_Click(Object sender, EventArgs e) in F:\ASC_FeedbackSystem(latest)\ASC_FeedbackSystem\asc\questionupdate.aspx.cs:161
     System.Web.UI.WebControls.Button.OnClick(EventArgs e) +111
     System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +110
     System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +10
     System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +13
     System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +36
     System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1565
  </code></pre>