首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TabPage点击事件

TabPage点击事件
EN

Stack Overflow用户
提问于 2012-03-13 20:49:31
回答 3查看 52.1K关注 0票数 15

我正在尝试根据在选项卡控件上单击的选项卡页自动触发事件。

在表单的设计模式中,当我单击选项卡时,属性框显示tabs System.Windows.Forms.TabControl,无论哪个选项卡被选中。但是,我必须单击实际的页面,而不是属性的选项卡才能更改为页面的名称,例如TaskListPage System.Windows.Forms.TabPage。

我的选项卡控件名为Tabs,我试图使用下面的代码对其进行测试,该代码将根据选项卡选项显示一条消息。

代码语言:javascript
复制
 private void Tabs_SelectedIndexChanged(object sender, EventArgs e)

        {
            if (Tabs.SelectedTab == TaskListPage)
            {
                MessageBox.Show("TASK LIST PAGE");
            }
            else if (Tabs.SelectedTab == SchedulePage)
            {
                MessageBox.Show("SCHEDULE PAGE");
            }
        }

当我测试上面的代码时,什么也没有发生。

当一个特定的标签被点击时,任何帮助让事件工作的人都会非常感激!

谢谢你

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-03-13 20:52:41

听起来你并没有把它连接起来:

代码语言:javascript
复制
public Form1() {
  InitializeComponent();    
  Tabs.SelectedIndexChanged += new EventHandler(Tabs_SelectedIndexChanged);
}

还有其他事件也可以为您提供此信息:SelectedSelecting

代码语言:javascript
复制
void Tabs_Selected(object sender, TabControlEventArgs e) {
  if (e.TabPage == TaskListPage) {
    // etc
  }
}
票数 22
EN

Stack Overflow用户

发布于 2016-08-01 12:52:51

这第一部分放在

代码语言:javascript
复制
    public Form1()
    {
// This is near the top of the form 1 code in form1.cs

        InitializeComponent();
        tabControl1.SelectedIndexChanged += new EventHandler(TabControl1_SelectedIndexChanged);
    }

然后,在下面的常规代码中,您可以简单地告知在单击选项卡页之后哪个控件应该具有焦点。在我的文字处理器中,我使用了一个富文本框和选项卡控件来模拟msword功能区。在我的示例中,富文本控件不在选项卡页上,因为我的选项卡页可能在表单顶部占据1或2英寸

代码语言:javascript
复制
private void TabControl1_SelectedIndexChanged(object sender, EventArgs e)
    {

        richTextBox1.Focus();
    }

这就是我所说的文字处理器。任何想要使用它的人都可以使用它。Larry's Journal

票数 0
EN

Stack Overflow用户

发布于 2019-12-17 01:43:40

代码语言:javascript
复制
private void tabControl1_Click(object sender, EventArgs e)
        {
            if (tabControl1.SelectedTab.Text =="All")
            {
                MessageBox.Show("All");
            }
            else
                MessageBox.Show("hello world");

        }
    }
Try This It should be work
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9684221

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档