我有一个中继器用于显示我的数据。这个中继器显示2个字段,其中一个是checkBox控件,另一个是标签。当复选框在ASP.net中检入时,在中继器中使用数据
现在,当checkBox被选中时,如何理解标签文本?
我想查看埃夫里行中的标签文本,检查CheckBoxes。
我该怎么办?
我用LINQtoSQL get和从数据库
我有一个中继器用于显示我的数据。这个中继器显示2个字段,其中一个是checkBox控件,另一个是标签。当复选框在ASP.net中检入时,在中继器中使用数据
现在,当checkBox被选中时,如何理解标签文本?
我想查看埃夫里行中的标签文本,检查CheckBoxes。
我该怎么办?
我用LINQtoSQL get和从数据库
页...
<asp:CheckBox ID="chkBoxID" runat="server" OnCommand="doSomething_Checked" CommandArgument="<%# Some Binding Information%>"
CommandName="NameForArgument">
</asp:CheckBox>
代码后面。 ..
protected void doSomething_Checked(object sender, CommandEventArgs e) {
CheckBox ctrl = (CheckBox)sender;
RepeaterItem rpItem = ctrl.NamingContainer as RepeaterItem;
if (rpItem != null) {
CheckBox chkBox = (LinkButton)rpItem.FindControl("chkBoxID");
chkBox.DoSomethingHere...
}
}
<asp:Repeater ID="rptX" runat="server">
<ItemTemplate>
<asp:Label ID="lblX" runat="server" Visible='<%# Eval("IsChecked") %>' />
<asp:CheckBox ID="chkX" runat="server" Checked='<%# Eval("IsChecked") %>' />
</ItemTemplate>
</asp:Repeater>
和代码设置数据的背后,当你分配你的数据
rptX.DataSource = SomeIEnumerableFromLinq; // which has a bool field called IsChecked
rptX.DataBind();
回发时,您需要遍历中继器的每一行,并抓取复选框控件。然后你可以访问它的.Checked和.Text属性。如果是.Checked,则将其添加到列表或数组中。我可以详细说明,如果需要..
我喜欢你如何接受一个答案,并不真正回答你的问题。 – 2009-10-25 01:55:55
这个问题与此不同。此复选框位于中继器的Body中,并且Checkbox位于中继器的Header中 – 2009-10-25 17:55:12