C# 从代码behinde访问asp.net自定义控件的属性
我创建了一个asp.net自定义控件C# 从代码behinde访问asp.net自定义控件的属性,c#,asp.net,asp.net-customcontrol,C#,Asp.net,Asp.net Customcontrol,我创建了一个asp.net自定义控件 <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="control.ascx.cs" Inherits="test.control.control" %> <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> 您需要向代码中添加一个表示文本框文本属性的属性 因此在control.ascx.cs
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="control.ascx.cs" Inherits="test.control.control" %>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
您需要向代码中添加一个表示文本框文本属性的属性 因此在control.ascx.cs中
public string Text
{
get { return TextBox1.Text; }
set { TextBox1.Text = value; }
}
这样就行了
<uc1:control runat="server" id="control" Text="My Control" />
只是澄清一下-自定义控件不会自然继承子控件的属性,例如,如果该控件有两个文本框控件,您希望发生什么?因此,对于希望自定义控件公开的每个属性,需要向代码隐藏中添加一个属性。您甚至可以添加与子控件的属性不相关的属性,并将值保留在隐藏字段、控件状态甚至视图状态中。谢谢,但您忘记了在getter和setter satatement中添加分号
<uc1:control runat="server" id="control" Text="My Control" />