私はTabControlを含むメインフォームを持っています。新しいフォームがTabControlのタブとして追加されます。 TabControlでフォームでないフォームから現在のアクティブなタブまたは閉じるタブを変更するのに問題があります。私がアクセスしようとしているコンポーネントはすべてPublicです。ここで他のC#フォームのコンポーネントにアクセスする際の問題
私はタブを変更するために使用するコードです:
Main mainForm = new Main();
mainForm.tcMain.SelectTab(mainForm.tpHome);
それは、私はそれが最初のタブのインデックスにそれを変更しようとした場合でも0
を動作しません。私も持っています私はこのような他の形式から変更しようとしている主な形でレーベル:
Main mainForm = new Main();
mainForm.labelStatus.Text = "Refreshed";
それは任意の助けになるだろう場合は、これは私がからメインフォームにアクセスしようとしているフォームが
と呼ばれる方法ですTable tableForm = new Table();
tableForm.TopLevel = false;
TabPage tableTab = new TabPage(tableForm.Text);
tcMain.TabPages.Add(tableTab);
tableForm.panelTable.Parent = tableTab;
tableForm.Parent = tableTab;
tcMain.SelectTab(tableTab);
tableForm.Show();
だけをパラメータとしてメイン 'Form'と' Form'を受け入れる表のコンストラクタを保存し、それを自分のメイン 'Form'を渡すために、プロパティを作成します。次に、そのプロパティを介して現在のタブを変更します –
待って、あなたが変更したいすべてのプロパティに対して、 'Main'の新しいインスタンスを作成していますか?彼らが変わらないのも不思議ではありません。 –
私はメインを格納するためのプロパティを作成しようとしていますが、私は紛失しています。そして、はい、私はメインの新しいインスタンスを作成していました。それ以外の方法は分かりませんでした。 – Lampa