vb自制组件并通过添加的表单访问嵌套组件。 我创建了一个包含几个按钮等的组件......当我将这个组件添加到表单时,我只能访问该组件的属性而不能访问组件中的“嵌套”按钮。在运行时,在调试模式下,我可以单击“父”组件中的一个按钮,然后访问该按钮的代码。但是,我需要通过“父”组件的形式访问该按钮。这个组件的倍数被添加到相关的表单中,我需要获取选择了哪一个的数据等。 任何帮助都会很棒
答案 0 :(得分:0)
您无法直接访问复合UserControl中的子控件。要做到这一点,你必须在UserControl中定义属性和方法,也许如果你向我们提供了一些代码并告诉我们你想要做什么,那么我们将能够帮助你。
答案 1 :(得分:0)
在UserControl设计器中选择要访问的控件。在" Design"的“属性”窗口中;部分将Modifiers
属性从Private
更改为Public
或Internal
。
现在可以从UserControl外部访问控件。这也适用于表单上的控件。
您还可以在声明控件的theUserControl.designer.cs
代码中直接更改访问修饰符。在此之前,建议关闭设计师,如果应该打开它。
可能更简洁的方法是将控件封装在属性
中public TextBox MyTextBox { get { return textBox1; } }
如果你只需要访问它的特定属性,那么更清晰的方法是封装这个属性
public string FirstName
{
get { return textBox1.Text; }
set { textBox1.Text = value; }
}
然后访问此属性的代码不依赖于特定控件。