繁体   English   中英

向WebUserControl传递值以在标签中显示

[英]passing a value to WebUserControl for show in a lable

嗨,我有一个WebUserControl,其中有一个用于显示消息的标签,我如何在运行时从Page向我的WebUserControl发送一个标签的值。

在控件文件后面的代码中,您可以指定一个属性

    [Bindable(true)]
    [Category("Appearance")]
    [DefaultValue("")]
    [Localizable(true)]
    public String customType
    {
        get
        {
            String s = (String)ViewState["customType"];
            return ((s == null) ? String.Empty : s);
        }

        set
        {
            ViewState["customType"] = value;
        }
    }

在获得此属性后,您可以使用

mylabel.text = mycontrol.customType

在asp页面中,指定属性(此处为'customType'):

<wuc:ContSign customType="person" ID="ContSignPanel" runat="server" />

MSDN

您可以在用户控件中创建一个公共方法,例如

public void ShowMessage(string message)
{
   Label1.Text = message;
}

Label1是用户控件中的标签控件。 现在,您可以在需要时使用Page中的方法-例如,

protected void Page_Load(object Sender, EventArgs e)
{
    MyUserControl1.ShowMessage("Hello");
}

其中MyUserControl1是页面上放置的Web用户控件的名称/ ID。

只需创建一个属性即可在用户控件中获取并设置标签的值

private string _labelmsg;
public string LableMsg
get
{
return _labelmsg;
}
set
{
_labelmsg=lblID.Text;
}

然后像这样在aspx.cs页面中进行设置

UserControlID.LabelMsg="Set Any Value";

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM