如何初始化选项卡的项目
本文关键字:项目 选项 初始化 | 更新日期: 2023-09-27 18:25:31
我有一个表单,上面有两个选项卡。我可以选择初始化后查看的选项卡,每次初始化tab2后我都需要一些初始代码:
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_SelectedIndexChanged。
但是,如果我在SetupComponent期间选择选项卡2=true,我就不可能执行该代码。我找到的所有TabControl1_Events都太早了,而且我找不到匹配的TabPage2_Event。
我该怎么办?
我使用Paint_Event:解决了这个问题
bool activated = false;
private void tabPage2_Paint(object sender, PaintEventArgs e)
{
if (!activated)
{
tabControl1_SelectedIndexChanged(null, null);
activated = true;
}
}
我使用这个变量是因为Paint_Event被调用了很多次。