tabcontrolユーザーコントロールを作成しました。私はすでにボタンが含まれているフォーム(test.csを呼び出した)にインポートしました。 ユーザコントロール(tabcontrol、ここではcustomtabcontrol)にプロパティを追加して、そのusercontrolが存在するウィンドウフォーム(test.cs)のボタンをクリックするたびに、 はそのusercontrol tabcontrolにタブページを追加する必要があります。ユーザーコントロールtabcontrolを含むフォームのボタンクリック時にタブページを作成する方法
ユーザーコントロールのための私のコードは次のとおりです。
namespace TestWizard
{
public partial class test : Form
{
public test()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
customtabcontrol tb = new customtabcontrol();
TabPage tp = new TabPage("New Tab");
tp.Controls.Add(new Label() { Text = "testing by shekhar" });
tb.TabPages.Add(tp); //this line will obviously give the error as tb cannot add tabpage , but how to add on it ?
}
}
}
とそのビューは次のとおりです:http://prntscr.com/ap9rj2
ここ
namespace TestWizard
{
public partial class customtabcontrol : UserControl
{
public customtabcontrol()
{
InitializeComponent();
}
}
}
は、ユーザーコントロールのビューには、私のテストフォームがあるhttp://prntscr.com/ap9qi7
ですどのように私のusercontrolにtest.csフォームボタンでタブページを追加するをクリックしますか? このボタンは、ユーザーコントロールのTabPagesコレクションプロパティを追加すること
それは全く明らかではないが。代わりにTabControlから派生した方がずっと簡単です。それがUCでなければならない場合は、TabControlを公開するプロパティを追加する必要があります。または、TabPageを追加するメソッド。 –
私は何を達成したいのか分からなかった。私はタブコントロールを含んでいるユーザーコントロールを持っていますよね?プログラムをビルドし、ボタンを含む別のフォームを追加します。次に、私はそのusercontrol(実際にはtabcontrol)をインポートし、test.csフォームを置く。今すぐこのボタンをクリックすると、カスタマイズされたtabcontrolにタブページを追加する必要があります。このUC-tabcontrolのボタンをクリックすることにより、動的に多くのページを追加できる必要があります。今はそれを手に入れましたか?これを達成する方法は? –
私の状況では、ボタンをクリックすると(そのユーザーコントロールには存在しません)、UC-tabcontrolでイベントを生成する必要があります。 addind tabpagesと同じように、将来はボタンをクリックしたタブページにUI(ラベル、テキストボックス、コンボなど)を追加している可能性があります。 –