本文介绍了C#中的Checkbox不会发生自动回发的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在gridview中有两个复选框.当单击第一个复选框时,不会发生自动回发.如何操作.请参见下面的代码-
ASPX页面-
Hi,
I have two check box inside gridview.While clicking on first check box Autopostback is not happening.How to do.Please see my below code--
ASPX Page--
<asp:TemplateColumn HeaderStyle-Width="60px" HeaderStyle-CssClass="gridheader">
<ItemStyle HorizontalAlign="Center" />
<HeaderTemplate>
Is Omani
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="chkIsOmani" CssClass="CheckBox" runat="server" Checked='<%#Bind("IsOmani") %>'
OnCheckedChanged="chkIsOmani_CheckedChanged" AutoPostBack="true" />
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderStyle-Width="60px" HeaderStyle-CssClass="gridheader">
<ItemStyle HorizontalAlign="Center" />
<HeaderTemplate>
Is SME
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="chkIsSME" CssClass="CheckBox" runat="server" Checked='<%#Bind("IsSME") %>' ToolTip="IS SME can be selected only if IS Omani is selected" />
</ItemTemplate>
</asp:TemplateColumn>
.CS页面---
.CS Page---
public string CheckOmaniData()
{
string _Items = "";
foreach (DataGridItem _item in dgServices.Items)
{
CheckBox chkIsOmani = (CheckBox)_item.FindControl("chkIsOmani");
CheckBox chkIsSME = (CheckBox)_item.FindControl("chkIsSME");
if (chkIsOmani.Checked)
{
_Items = _Items + _item.Cells[0].Text + ",";
chkIsSME.Enabled = true;
chkIsSME.Attributes.Add("onclick", "return true;"); // To retain the value like enabling
}
else
{
_Items = _Items + _item.Cells[0].Text + ",";
//chkIsSME.Enabled = false;
chkIsSME.Attributes.Add("onclick", "return false;"); //To retain original value like disabling
chkIsSME.Checked = false;
}
}
return _Items.Substring(0, _Items.Length - 1);
}
protected void chkIsOmani_CheckedChanged(object sender, EventArgs e)
{
CheckOmaniData();
}
推荐答案
void ProductsGridView_RowCommand(Object sender, GridViewCommandEventArgs e)
{
// CommandName property to determine which button was clicked.
if(e.CommandName=="check1")
{
// code on checkbox select
}
}
谢谢,
Bh @ gyesh
Thanks,
Bh@gyesh
这篇关于C#中的Checkbox不会发生自动回发的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!