选项卡页面单击事件
本文关键字:单击 事件 选项 | 更新日期: 2023-09-27 18:27:33
我正在尝试根据选项卡控件上单击的选项卡页面自动触发事件。
在窗体的设计模式下,当我单击选项卡时,属性框会显示tabs System.Windows.Forms.TabControl,无论选择哪个选项卡。但是,我必须单击实际页面,而不是属性的选项卡才能更改为页面名称,例如TaskListPage System.Windows.Forms.TabPage.
我的tabcontrol名为Tabs,我试图使用下面的代码来测试它,该代码应该显示一条基于tab选项的消息。
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");
}
}
当我测试上面的代码时,什么都没有发生。
如果您能在点击特定选项卡时为活动提供任何帮助,我们将不胜感激!
感谢
听起来你没有把它连接起来:
public Form1() {
InitializeComponent();
Tabs.SelectedIndexChanged += new EventHandler(Tabs_SelectedIndexChanged);
}
还有其他事件也可以提供此信息:Selected
和Selecting
。
void Tabs_Selected(object sender, TabControlEventArgs e) {
if (e.TabPage == TaskListPage) {
// etc
}
}
第一部分进入
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英寸
private void TabControl1_SelectedIndexChanged(object sender, EventArgs e)
{
richTextBox1.Focus();
}
这就是我所说的文字处理器。这里是为任何想使用它的人准备的。Larry's Journal
private void tabControl1_Click(object sender, EventArgs e)
{
if (tabControl1.SelectedTab.Text =="All")
{
MessageBox.Show("All");
}
else
{
MessageBox.Show("hello world");
}
}
试试这个它应该是工作