单击选项卡控件的选定选项卡页眉时如何触发事件

nev*_*ets 3 c# tabs winforms

我正在使用C#进行Winform应用程序,并且我有一些标签页,比如说tabPage1,tabPage2并且tabPage3在选项卡控件中,并且tabPage1已被选中.

我想在单击任何标签页标题时触发事件,但我只能进行页面更改(通过使用SelectedIndexChanged),但不能单击选定的标签页标题.

我试过SelectingSelected事件,但他们两个都没有工作.我在MSDN上搜索但没有Click在页眉上找到任何定义的事件.那我该怎么做呢?

还有一个问题是,是否有可能以及如何DoubleClick选定的标签页上进行检测?

Han*_*ant 7

只需使用tabcontrol的MouseDoubleClick事件.您必须迭代选项卡以找出单击的特定选项卡:

    private void tabControl1_MouseDoubleClick(object sender, MouseEventArgs e) {
        for (int ix = 0; ix < tabControl1.TabCount; ++ix) {
            if (tabControl1.GetTabRect(ix).Contains(e.Location)) {
                // Found it, do something
                //...
                break;
            }
        }
    }
Run Code Online (Sandbox Code Playgroud)

请记住,这对于用户来说是完全无法发现的,他永远不会想到双击选项卡.你必须写一本手册.