C# 在数据列表中使用复选框和文本框
我已经在asp.net中创建了一个数据列表-C# 在数据列表中使用复选框和文本框,c#,asp.net,string,checkbox,C#,Asp.net,String,Checkbox,我已经在asp.net中创建了一个数据列表- <asp:DataList runat="server" ID="pTextBox"> <ItemTemplate> <asp:CheckBox ID="CheckBoxPN" runat="server" Checked='false' /> <asp:TextBox ID="profileTextBox" runat="server" Text='<%# Container.DataItem.
<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>
</ItemTemplate>
</asp:DataList>
这将基于从Web服务传递的字符串值创建复选框和文本框
当用户单击CheckBoxPN
并用字符串值填充页面上数据列表之外的另一个文本框时,如何获取profileTextBox
文本字符串值,只需使用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数据绑定控件(
Repeater
,GridView
,等等)“如何获取”。。。哪里客户端还是服务器端?将字符串值传递给页面上的另一个文本框,并使用我应该提到的数据列表。现在编辑。我尝试了您的解决方案,并将其添加到了aspx中-但是,如果我在调试时在“CheckBoxPN_CheckedChanged”上设置断点,当我在其上设置断点时,它不会进入事件,并且无法检索该值???@Jambo:我假设您错误地将数据绑定到回发上的数据列表。只要在第一次加载时执行即可。因此,这可能会在Page_Load
中修复它:如果(!IsPostBack){DataBindDataList();}
看起来你是个英雄。繁荣完成!非常感谢。