我是一个相对较新的开发人员,并且只在全职工作了大约6个月,所以提前感谢您阅读和/或回答我的问题
我有一个数据中转中继器.在这个中继器中,我有一个gridview,sqlDS和2个复选框.两个复选框都有一个OnCheckedChanged事件,Autopostback设置为true.转发器也有一个OnItemDataBound事件.
以下是我的代码布局的示例:
<asp:Repeater ID="Repeater1" OnItemDataBound="Repeater1_ItemDataBound"> <ItemTemplate> <asp:Panel> <asp:UpdatePanel> <ContentTemplate> <asp:CheckBox ID="CheckBox1" Autopostback="True" OnCheckedChanged="CheckBox1_CheckedChanged"> <asp:CheckBox ID="CheckBox2"Autopostback="True" OnCheckedChanged="CheckBox2_CheckedChanged"> <asp:Gridview ID="Gridview1" DataSourceID="sqlDataSource1"> <asp:sqlDataSource ID="sqlDataSource1" SelectCommand="SP1" SelectCommandType="StoredProcedure"> </ContentTemplate> </asp:UpdatePanel> </asp:Panel> </ItemTemplate> </asp:Repeater>
和C#
protected void CheckBox1_CheckedChanged(object sender,EventArgs e) { if (CheckBox1.Checked == true) { if (CheckBox2.Checked == true) sqlDataSource1.SelectCommand = "SP1"; else sqlDataSource1.SelectCommand = "SP2"; } else sqlDataSource1.SelectCommand = "SP3"; } protected void CheckBox2_CheckedChanged(object sender,EventArgs e) { if (CheckBox2.Checked == true) { if (CheckBox1.Checked == true) sqlDataSource1.SelectCommand = "SP3"; else sqlDataSource1.SelectCommand = "SP2"; } else sqlDataSource1.SelectCommand = "SP1"; } protected void Repeater1_ItemDataBound(object sender,RepeaterItemEventArgs e) { //Uses FindControl to Databind the GV and hides it if GV.Rows.Count==0 }
我正在AJAX TabPanel中完成所有这些工作.我有另一个页面,这段代码完美地工作,但它不在另一页的转发器内.
本质上,我有一个带有gridview的页面加载,这两个复选框改变了SP填充gridview的内容.我遇到的问题是当你取消选中复选框(它们开始检查)时,它1.只需重新检查自己和2.不要点击CheckedChanged事件.
任何帮助将不胜感激.
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。