首页 > 解决方案 > 如何访问用户控件中的特定控件?

问题描述

假设我有一个用户控件,里面有一些控件,我让这个用户控件在表单中可见。如何访问该用户控件中的特定控件?例如,以前,如果我在表单中有一个标签,我所做的只是 label.Text = "text"; 但是我将如何更改位于表单内部的用户控件内部的标签文本(例如)?

标签: c#winformsuser-controls

解决方案


在您的用户控件中创建一个公共方法并从表单中调用它:

public void SetCaption(string caption)
{
    label1.Text = caption;
}

现在以您的形式:

userControl1.SetCaption("text");

要按照您在评论中的建议访问控件本身,您可以在您的用户控件中创建一个公共属性,该属性返回您想要的控件:

public Label MyLabel {get { return Label1; }}

然后以您的形式:

userControl1.MyLabel.Text = "text";

推荐阅读