用户控件属性设置失败

时间:2013-05-16 15:35:19

标签: c# asp.net user-controls

我在webform上有一个用户控件。我在用户控件上有viewstate支持的公共属性。在webform的代码隐藏中,我尝试设置公共属性。当我在集合点调试后面的代码时,调试器永远不会将我带到setter。同样,公共属性的文本框的值永远不会被设置。为什么呢?

//aspx page with reference to user control on a telerik tab/page view
<telerik:RadPageView ID="radpvCommunication" runat="server">
    <uc:Communication ID="Communication1" runat="server" />
</telerik:RadPageView>

//Webform method to set user control public property
private void SetCommunicationControlText()
{
    Communication1.SubjectTextBoxText = "This is a test set from organization";
}

//user control code
public partial class CommunicationUserControl : UserControl
{
    public string SubjectTextBoxText
    {
        get { return ViewState["SubjectTextBoxText"].ToString(); }
        set { ViewState["SubjectTextBoxText"] = value; }
    }
}

1 个答案:

答案 0 :(得分:1)

为什么不让属性包装控件?这样,控件就会为您管理视图状态:

public string SubjectTextBoxText
{
     get { return TextBox1.Text; }
     set { Textbox1.Text = value; }
}

这是我采取的方法,效果很好。