用户控制的两个实例一个实例对事件做出反应,另一个实例没有
本文关键字:实例 另一个 一个 控制 两个 用户 事件 | 更新日期: 2023-09-27 17:56:04
我有一个用户控件。用户控制的两个实例一个实例对事件做出反应,另一个实例没有。
一些建议?
这是用户控件,
名字:
<asp:TextBox ID="TextBoxFirstName" runat="server"></asp:TextBox> <asp:RequiredFieldValidator ID="RQV1" runat="server" ControlToValidate="TextBoxFirstName" ErrorMessage="*"></asp:RequiredFieldValidator>
姓氏:
<asp:TextBox ID="TextBoxLastName" runat="server"></asp:TextBox> <asp:RequiredFieldValidator ID="RQV2" runat="server" ControlToValidate="TextBoxLastName" ErrorMessage="*"></asp:RequiredFieldValidator>
下面是公开公共属性的页面的代码隐藏,
public string GetFirstName
{
get { return TextBoxFirstName.Text; }
set { TextBoxFirstName.Text = value; }
}
public string GetLastName
{
get { return TextBoxLastName.Text; }
set { TextBoxLastName.Text = value; }
}
在代码隐藏中,我将创建两个公共字符串变量,将值设置为 TextBox 控件的 Text 属性,并返回 TextBox 控件的 Text 属性。
然后,在主页中,
<form id="form1" runat="server">
<div>This is page to add multiple user controls.</div>
<p>
Customer1 Details:<br />
<uc1:WebUserControl1 ID="WebUserControl11" runat="server" />
</p>
<p>
Customer2 Details:<br />
<uc1:WebUserControl1 ID="WebUserControl12" runat="server" />
</p>
<asp:Button ID="Button1" runat="server" Text="Continue" OnClick="GetCustDetails"/>
<asp:Button ID="Button2" runat="server" Text="Clear" CausesValidation="false" OnClick="ClearFields" /><br />
Customer1 FirstName: <asp:label ID="Label1" runat="server"></asp:label><br />
Customer1 LastName: <asp:label ID="Label2" runat="server"></asp:label><br />
Customer2 FirstName: <asp:label ID="Label3" runat="server"></asp:label><br />
Customer2 LastName: <asp:label ID="Label4" runat="server"></asp:label><br />
</form>
我正在向页面添加用户控件的两个实例。然后有四个 Label 控件,它们将在单击 Button1 时显示用户控件的属性。还有另一个 Button2 用于清除所有用户控件的文本框控件。
protected void GetCustDetails(object sender, EventArgs e)
{
Label1.Text = WebUserControl11.GetFirstName;
Label2.Text = WebUserControl11.GetLastName;
Label3.Text = WebUserControl12.GetFirstName;
Label4.Text = WebUserControl12.GetLastName;
}
protected void ClearFields(object sender, EventArgs e)
{
WebUserControl11.GetFirstName = string.Empty;
WebUserControl11.GetLastName = string.Empty;
WebUserControl12.GetFirstName = string.Empty;
WebUserControl12.GetLastName = string.Empty;
}