如何在选项卡控件中创建用户元素的副本/链接?

时间:2009-12-21 20:13:30

标签: c# forms tabs

我有一个.NET表单应用程序,它使用带有多个选项卡的选项卡控件。需要在每个选项卡上显示一些元素(按钮和几个文本框)。而不是创建5个单独的元素(包括所有适当的属性),有没有办法创建一个元素的“链接”?

例如,当事件发生时,我需要一个文本框来在每个选项卡中显示相同的信息。就目前而言,我需要为每个选项卡创建一个新的文本框,然后显式写入每个选项卡。最简单的方法就是写入一个文本框,然后考虑其余的“链接”自动更新。

2 个答案:

答案 0 :(得分:2)

那些控件确实应该在TabPage上的其他地方。但是,您可以通过实现SelectedIndexChanged事件并更改控件的Parent来获得所需的内容。此示例代码将文本框保留在选定的选项卡上:

    private void tabControl1_SelectedIndexChanged(object sender, EventArgs e) {
        textBox1.Parent = tabControl1.SelectedTab;
    }

答案 1 :(得分:1)

抱歉,没有办法做到这一点。表单上的控件是该表单的子级,它们不能同时是多种形式的子级。 (选项卡基本上是子表单)。

您可以创建一个对所有要表现相同的文本框的引用数组,并在写入其中一个时写入所有文本框。要么 将文本保留在文本框之外的某个位置,并在用户更改标签时更新可见选项卡上的文本框。