C# 如何初始化选项卡的项?
我有一张有两个标签的表格。我可以选择初始化后查看的选项卡,每次初始化tab2后我都需要一些初始代码:C# 如何初始化选项卡的项?,c#,events,tabs,C#,Events,Tabs,我有一张有两个标签的表格。我可以选择初始化后查看的选项卡,每次初始化tab2后我都需要一些初始代码: public partial class SetupComponent : Form { public SetupComponent(bool tab2) { InitializeComponent(); if (tab2) { this.tabControl1.SelectedTab = tabPage2;
public partial class SetupComponent : Form
{
public SetupComponent(bool tab2)
{
InitializeComponent();
if (tab2)
{
this.tabControl1.SelectedTab = tabPage2;
}
}
private void tabControl1_SelectedIndexChanged(object sender, EventArgs e)
{
textBox1.SelectionStart = textBox1.Text.Length;
textBox1.ScrollToCaret();
textBox2.SelectionStart = textBox2.Text.Length;
textBox2.Focus();
}
}
如果我用tab2=false调用这个类,然后单击tab2,则调用tabControl1\u SelectedIndexChanged
但是如果我在SetupComponent期间选择tab2=true,我发现不可能执行该代码。我找到的所有TabControl1\u事件都太早了,我找不到匹配的TabPage2\u事件
如何管理它?我使用Paint\u事件管理此问题:
bool activated = false;
private void tabPage2_Paint(object sender, PaintEventArgs e)
{
if (!activated)
{
tabControl1_SelectedIndexChanged(null, null);
activated = true;
}
}
我之所以使用这个变量,是因为Paint_事件被多次调用。之前我做了一个变通,先循环每个选项卡页面来初始化每个页面,然后将选项卡设置回第一个页面。对不起,我没有收到你的问题,如果tab2=true,你想在UI中选择tapPage2吗?@Mohammad:是的。但在显示tabPage2时,也要更改tabControl1_SelectedIndex的代码。