各位大大請教如圖,MainForm裡有個分頁元件,另外做一個UserControl各別放進MainForm的兩個分頁裡。
UserControl裡也有分頁,也有元件,我想要當UserControl的CheckedChanged事件觸發時,可以依據MainForm目前所選的分頁來實做不同的事~
如下圖及範例程式,不過好像new Form1()會造成無窮廻圈的錯誤,不知道是否可以在UserControl的元件裡取得父元件Form1的東西呢?
//Form1.cs
namespace WindowsFormsApplication3
{
public partial class Form1 : Form
{
static Form1 _obj;
public static Form1 Instance
{
get
{
if (_obj == null)
{
_obj = new Form1();
}
return _obj;
}
}
public Form1()
{
InitializeComponent();
uC_Test11.UcTp1Cb1.Checked = true;
uC_Test11.UCTabControl.SelectedIndex = 1;
}
}
}
//UC_Test1.cs
namespace WindowsFormsApplication3
{
public partial class UC_Test1 : UserControl
{
public UC_Test1()
{
InitializeComponent();
}
private void UcTp1Cb1_CheckedChanged(object sender, EventArgs e)
{
//要如何取得MainTabControl分頁選取的Index???
if (Form1.Instance.MainTabControl.SelectedIndex == 1)
{
MessageBox.Show("SelectedIndex == 1");
}else
{
MessageBox.Show("SelectedIndex != 1");
}
}
}
}
執行後的錯誤訊息,是指造成無窮廻圈的意思?