繁体   English   中英

单击按钮上的“选项卡控件”中的克隆选项卡,然后在Winforms中单击

[英]Cloning tabs in Tab Control on button click in Winforms

所以我在winform TabControl的TabPage之一上有一个主页。 我有一个按钮,使用此Tabs.TabPages.Add("Homepage");添加了一个新标签Tabs.TabPages.Add("Homepage");

但是TabPages.Add()只会添加一个新的空白页,我该如何在新选项卡上克隆主页? 例如,如果我的主页上有一个按钮“ Click me”,则当我打开一个新标签时,我希望它具有与相同事件“ ClickMe_click”链接的相同按钮“ Click me”。 就像Chrome Tab控件一样。 我找不到msdn上为TabControl内置的任何事件或方法,除非我错过了它。

任何帮助或暗示或建议,将不胜感激。 谢谢。

您无法如此轻松地克隆标签页。 一个可以尝试,但是推荐的方法是:

  • 创建一个UserControl并将所需的所有控件添加到页面上。 将其设置为Dock=Fill并添加连接控件的所有代码。 您可以像在表单或标签页中那样自由布局。

  • 每当您需要此类型的另一个页面时,请添加一个新的选项卡页,并将UserControl的实例添加到其Controls集合。

注意:默认情况下, UserControl上的所有控件均为private 这与将它们直接放在选项卡页上并没有什么不同。 但是现在它们是UC类的私有成员,因此您的表单及其代码无法访问它们。

初学者时看起来像是个问题。 但是,如果您看对的话,这是一个创建更精简界面的好机会。

  • 解决方案1:根据需要将控件修饰符更改为public

  • 解决方案2:添加属性以公开您真正想要公开的数据。

另请注意:您可以进行所有布局,但只能在UC设计器中进行。 添加到表单或标签页后,将没有嵌入式设计器。

暂无
暂无

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

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