gpt4 book ai didi

c# - Winform 和用户控制 - C#

转载 作者:太空宇宙 更新时间:2023-11-03 17:36:30 25 4
gpt4 key购买 nike

我有一个表单和一个用户控件。 UserControl 有一个菜单,表单有一个标签条(General、Food、Vitamins 等)。

在UserControl中,我有以下代码:(表单名称是frmForm,表单中的选项卡名称是tabGeneral,tabFood,tabVitamins)

  frmForm fm=new frmForm();
fm.tabMain.Selected=tabVitamins;

我从 UserControl 调用这些行来捕获要在表单上选择的选项卡,但它没有选择维生素选项卡。

我哪里错了?对于表单中的选项卡,我有访问说明符作为 protected 内部。

请指教。

谢谢,
卡西克

最佳答案

当你写 new frmForm() ,您正在创建 frmForm 的全新实例, 然后被丢弃。

获取 frmForm控制您的实例,调用 FindForm()方法并转换为 frmForm .

例如:

frmForm myForm = FindForm() as frmForm; 
if(myForm != null)
myForm.tabMain.SelectedTab = myForm.tabVitamins;

如果控件位于其他表单上,则此代码不会执行任何操作。

顺便说一句,.Net 中不赞成使用匈牙利表示法。
您的表单可能应该命名为 MainForm .

关于c# - Winform 和用户控制 - C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1956197/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com