vb访问组件中的嵌套组件

时间:2016-09-03 18:44:21

标签: vb.net components

vb自制组件并通过添加的表单访问嵌套组件。 我创建了一个包含几个按钮等的组件......当我将这个组件添加到表单时,我只能访问该组件的属性而不能访问组件中的“嵌套”按钮。在运行时,在调试模式下,我可以单击“父”组件中的一个按钮,然后访问该按钮的代码。但是,我需要通过“父”组件的形式访问该按钮。这个组件的倍数被添加到相关的表单中,我需要获取选择了哪一个的数据等。 任何帮助都会很棒

2 个答案:

答案 0 :(得分:0)

您无法直接访问复合UserControl中的子控件。要做到这一点,你必须在UserControl中定义属性和方法,也许如果你向我们提供了一些代码并告诉我们你想要做什么,那么我们将能够帮助你。

答案 1 :(得分:0)

在UserControl设计器中选择要访问的控件。在" Design"的“属性”窗口中;部分将Modifiers属性从Private更改为PublicInternal

现在可以从UserControl外部访问控件。这也适用于表单上的控件。

您还可以在声明控件的theUserControl.designer.cs代码中直接更改访问修饰符。在此之前,建议关闭设计师,如果应该打开它。

可能更简洁的方法是将控件封装在属性

public TextBox MyTextBox { get { return textBox1; } }

如果你只需要访问它的特定属性,那么更清晰的方法是封装这个属性

public string FirstName
{
    get { return textBox1.Text; }
    set { textBox1.Text = value; }
}

然后访问此属性的代码不依赖于特定控件。