【发布时间】:2014-03-10 13:56:47
【问题描述】:
我有一个TabControl,用户可以向其中添加标签页。
我正在尝试附加一些事件,例如:MouseEnter、MouseLeave、MouseClick,但似乎这些事件根本没有触发,它们只有在我将它们附加到 @987654325 时才会触发@ 本身,但这不是我需要的。
将事件附加到标签控制标签页有什么问题?
这是我最近尝试从我的代码中附加这些事件:
private void customerTabCtrl_ControlAdded(object sender, ControlEventArgs e)
{
TCTabPage tctab = (TCTabPage)e.Control; // Option A
TCTabPage tctab = (TCTabPage)customerTabCtrl.Controls[customerTabCtrl.Controls.Count - 1]; //Option B
tctab.MouseEnter += new EventHandler(tctab_MouseEnter);
tctab.MouseLeave += new EventHandler(tctab_MouseLeave);
}
【问题讨论】:
-
"它们只有在我将它们附加到它自己的选项卡控件时才会触发,但这不是我需要的。" - 那么你需要在哪里附加事件呢?
-
如何将事件准确地附加到用户添加的标签页?
-
向我们展示您附加事件的代码。
-
这是我最近尝试附加的:
private void customerTabCtrl_ControlAdded(object sender, ControlEventArgs e) { TCTabPage tctab = (TCTabPage)e.Control; //option A TCTabPage tctab = (TCTabPage)customerTabCtrl.Controls[customerTabCtrl.Controls.Count - 1]; // Option B tctab.MouseEnter += new EventHandler(tctab_MouseEnter); tctab.MouseLeave += new EventHandler(tctab_MouseLeave); } -
您的代码看起来不错,添加的
tabpage里面是什么?确保您的新tabpage不会被其他控件覆盖。
标签: c# winforms tabcontrol tabpage