Hi.
This little thing is killing me. I have CheckBoxes in a DataGrid as below.
When user pushes a submit button, I want to know what CheckBoxes are checked.
However, in the submit button handler, I can't seem to get the state of
these CheckBoxes.
When I do if (oCheckBox.Checked == true) in C# code, my CheckBoxes are not
checked even though I check them.
Please help.
<Columns>
<asp:TemplateColumn HeaderText="Appointment Date">
<itemtemplate>
<%# DataBinder.Eval(Container.DataItem,
"AppointmentDate") %>
<asp:Label ID="MM" Visible="False" Text='<%#
DataBinder.Eval(Container.DataItem, "MM") %>' Runat=server />
<asp:Label ID="DD" Visible="False" Text='<%#
DataBinder.Eval(Container.DataItem, "DD") %>' Runat=server />
<asp:Label ID="YY" Visible="False" Text='<%#
DataBinder.Eval(Container.DataItem, "YY") %>' Runat=server />
</itemtemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="8AM - 10AM">
<itemtemplate>
<asp:CheckBox ID="AM1" runat="server"></asp:CheckBox>
<asp:Label ID="AM1C" Visible="False" Text='<%#
DataBinder.Eval(Container.DataItem, "AM1") %>' Runat=server />
</itemtemplate>
</asp:TemplateColumn>
+++++ C# code here +++++
private void btnSubmit_Click(object sender, System.EventArgs e)
{
string sConn = ConfigurationSettings.AppSettings["ConnectString"];
System.Web.UI.WebControls.CheckBox oCheckBox;
System.Web.UI.WebControls.Label oMM;
System.Web.UI.WebControls.Label oDD;
System.Web.UI.WebControls.Label oYY;
//System.DateTime dtTemp = System.DateTime.Now;
byte iAM1 = 0;
byte iAM2 = 0;
byte iPM1 = 0;
byte iPM2 = 0;
try
{
foreach (DataGridItem oItem in DataGrid1.Items)
{
oMM = (System.Web.UI.WebControls.Label) oItem.FindControl("MM");
oDD = (System.Web.UI.WebControls.Label) oItem.FindControl("DD");
oYY = (System.Web.UI.WebControls.Label) oItem.FindControl("YY");
System.DateTime dtTemp = new DateTime(Convert.ToInt32(oYY.Text),
Convert.ToInt32(oMM.Text), Convert.ToInt32(oDD.Text));
oCheckBox = (System.Web.UI.WebControls.CheckBox)
oItem.FindControl("AM1");
if (oCheckBox.Checked == true)
iAM1 = 1;
--
Be Cool!