在DataList中使用checkBox和textBox

时间:2013-01-16 15:58:05

标签: c# asp.net string checkbox

我在asp.net中创建了一个DataList -

<asp:DataList runat="server" ID="pTextBox">

<ItemTemplate>

<asp:CheckBox ID="CheckBoxPN" runat="server"  Checked='false' />
<asp:TextBox ID="profileTextBox" runat="server" Text='<%# Container.DataItem.ToString() %>'></asp:TextBox>&nbsp;


</ItemTemplate>
</asp:DataList>

这将根据从webService传递的字符串值创建checkBoxes和textBoxes。

当用户单击profileTextBox并使用字符串值填充页面上的DataList时,如何获取CheckBoxPN文本字符串值?

1 个答案:

答案 0 :(得分:2)

您可以使用CheckBox的{​​{3}}事件并将其NamingContainer投射到DataListItem,您只需使用FindControl查找其他内容服务器控制:

protected void CheckBoxPN_CheckedChanged(Object sender, EventArgs e)
{
    CheckBox chk = (CheckBox) sender;
    DataListItem item = (DataListItem) chk.NamingContainer;
    TextBox txt = (TextBox) item.FindControl("profileTextBox");
    this.OtherTextBoxOnPage.Text = txt.Text; // here we are
}

顺便说一下,这种方法适用于任何web-dataatabound控件(RepeaterGridView等。)