findcontrol的复选框无法找到,但其ID已定义无法解决问题,请帮我解决问题 [英] findcontrol of checkbox is unable to find, but its ID already defined unable to solve the problem, please help me for solving problems
本文介绍了findcontrol的复选框无法找到,但其ID已定义无法解决问题,请帮我解决问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
private void updatetono()
{
DataTable dtpack =(DataTable)Session [ gridviewupdate跨度>];
DataTable dtudate = new DataTable();
for ( int i = 0 ; dtpack.Rows.Count > i; i ++)
{
CheckBox checks =(CheckBox)grdno.Rows [i]。单元格[ 0 ]。FindControl( gridviewtrans跨度>);
if (checks.Checked)
{
dtudate = lo.updatehomeunactive(dtpack.Rows [i] [ PkgName]。ToString());
}
其他
{
}
}
}
受保护 void Updateno_Click( object sender,EventArgs e)
{
updatetono();
}
< asp:GridView ID = grdno runat = server CellSpacing = 2宽度= 30% CellPadding = 4
AutoGenerateColumns = False ForeColor = #333333高度= 86px alignment = left
Style = margin-top:3px >
< colum NS>
< asp:TemplateField HeaderText = 选择 >
< itemtemplate>
< asp:CheckBox ID = gridviewtrans runat = server />
< / itemtemplate >
< asp:TemplateField HeaderText = S.No。 HeaderStyle-HorizontalAlign = 左 >
< itemtemplate>
<%#Container.DataItemIndex + 1 %>
< / itemtemplate >
< HeaderStyle HorizontalAlign = 左 > < / HeaderStyle >
< asp:BoundField DataField = PkgName HeaderText = < span class =code-string> PkgName />
< asp:BoundField DataField = HomeActive HeaderText = 状态 />
< / 列 >
< br />
< asp:按钮ID = Updateno runat = server
Text = 更新为否 onclick = Updateno_Click />
< br />
Aspx页面代码
< asp:GridView ID = grdno runat = server CellSpacing = 2 宽度 = 30% CellPadding = 4
< span class =code-attribute> AutoGenerateColumns = 错误 ForeColor = #333333 高度 = 86px alignment = left
< span class =code-attribute> 样式 = margin-top:3px >
< 列 >
< asp:TemplateField HeaderText = 选择 >
< ItemTemplate中跨度> >
< asp:CheckBox ID = < span class =code-keyword> gridviewtrans runat = server / >
< / ItemTemplate >
< / asp:TemplateField >
< as p:TemplateField HeaderText = S.No。 HeaderStyle-HorizontalAlign = 左 >
< ItemTemplate >
<% #Container.DataItemIndex + 1 %>
< span class =code-keyword>< / ItemTemplate >
< Head erStyle HorizontalAlign = 左 > < / HeaderStyle >
< / asp:TemplateField >
< asp:BoundField DataField = PkgName HeaderText = PkgName / >
< < span class =code-leadattribute> asp:BoundField DataField = HomeActive HeaderText = 状态 / >
< /列 >
< ; / asp:GridView >
< br / >
& nbsp;& nbsp;& nbsp;& nbsp; < asp:按钮 ID = Updateno runat = server
文字 = 更新为否 onclick = Updateno_Click / >
< br / >
解决方案
您好,
修改你的代码并试试这种方式
private void updatetono()
{
DataTable dtpack =(DataTable)Session [ gridviewupdate];
DataTable dtudate = new DataTable();
for(int i = 0; dtpack.Rows.Count> i; i ++)
{
//在此更改
CheckBox checks =(CheckBox)grdno.Rows [i ] .FindControl( gridviewtrans);
if(checks!= null&& checks.Checked)
{
dtudate = lo.updatehomeunactive(dtpack.Rows [i] [PkgName]。ToString());
}
其他
{
}
}
}
谢谢
private void updatetono()
{
DataTable dtpack = (DataTable)Session["gridviewupdate"];
DataTable dtudate = new DataTable();
for (int i = 0; dtpack.Rows.Count > i; i++)
{
CheckBox checks = (CheckBox)grdno.Rows[i].Cells[0].FindControl("gridviewtrans");
if(checks.Checked)
{
dtudate = lo.updatehomeunactive(dtpack.Rows[i]["PkgName"].ToString());
}
else
{
}
}
}
protected void Updateno_Click(object sender, EventArgs e)
{
updatetono();
}
<asp:GridView ID="grdno" runat="server" CellSpacing="2" Width="30%" CellPadding="4"
AutoGenerateColumns="False" ForeColor="#333333" Height="86px" alignment="left"
Style="margin-top: 3px">
<columns>
<asp:TemplateField HeaderText="Select">
<itemtemplate>
<asp:CheckBox ID="gridviewtrans" runat="server"/>
</itemtemplate>
<asp:TemplateField HeaderText="S.No." HeaderStyle-HorizontalAlign="Left">
<itemtemplate>
<%# Container.DataItemIndex+1 %>
</itemtemplate>
<HeaderStyle HorizontalAlign="Left"></HeaderStyle>
<asp:BoundField DataField="PkgName" HeaderText="PkgName" />
<asp:BoundField DataField="HomeActive" HeaderText="Status" />
</columns>
<br />
<asp:Button ID="Updateno" runat="server"
Text="Update To No" onclick="Updateno_Click" />
<br />
Aspx page code
<asp:GridView ID="grdno" runat="server" CellSpacing="2" Width="30%" CellPadding="4"
AutoGenerateColumns="False" ForeColor="#333333" Height="86px" alignment="left"
Style="margin-top: 3px">
<Columns>
<asp:TemplateField HeaderText="Select">
<ItemTemplate>
<asp:CheckBox ID="gridviewtrans" runat="server"/>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="S.No." HeaderStyle-HorizontalAlign="Left">
<ItemTemplate>
<%# Container.DataItemIndex+1 %>
</ItemTemplate>
<HeaderStyle HorizontalAlign="Left"></HeaderStyle>
</asp:TemplateField>
<asp:BoundField DataField="PkgName" HeaderText="PkgName" />
<asp:BoundField DataField="HomeActive" HeaderText="Status" />
</Columns>
</asp:GridView>
<br />
<asp:Button ID="Updateno" runat="server"
Text="Update To No" onclick="Updateno_Click" />
<br />
解决方案
Hello ,
Modify your code and try this way
private void updatetono() { DataTable dtpack = (DataTable)Session["gridviewupdate"]; DataTable dtudate = new DataTable(); for (int i = 0; dtpack.Rows.Count > i; i++) { //change here CheckBox checks = (CheckBox)grdno.Rows[i].FindControl("gridviewtrans"); if(checks != null && checks.Checked) { dtudate = lo.updatehomeunactive(dtpack.Rows[i]["PkgName"].ToString()); } else { } } }
Thanks
这篇关于findcontrol的复选框无法找到,但其ID已定义无法解决问题,请帮我解决问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文