UltraTabControl にはTabClosed
およびTabClosing
イベントがあります。
これらのイベントは、UltraTabPageControl がホストされている UltraTab を閉じることに関連しています。
イベント ハンドラーは、このイベントに関連する型の引数TabClosingEventArgs
またはデータを含む引数を受け取ります。TabClosedEventArgs
すべての UltraTab は、UltraTabConrol の Tabs コレクションに記録されます。すべての UltraTab には UltraTabPageControl があります
標準の Windows タブ コントロールとのこれらの違いは、そこでホストされているコントロールがすべての UltraTabPageControl で表示される「共有ページ」の存在によるものだと思います。
コード例は階層をよりよく説明しています
// Call BeginUpdate to prevent the display from
// refreshing as we add individual tabs.
// Note: This MUST be paired with a call to
// EndUpdate below.
this.ultraTabControl1.BeginUpdate();
UltraTab tabAdded;
UltraTabsCollection tabs = this.ultraTabControl1.Tabs;
// Add a tab to the Tabs collection
tabAdded = tabs.Add("options", "&Options");
// Create a new control
TextBox tb = new TextBox();
tb.Location = new Point(20,20);
tb.Size = new Size(80, 20);
// Add the control to the tab's tab page
tabAdded.TabPage.Controls.Add(tb );
// Call EndUpdate to allow the display to refresh
this.ultraTabControl1.EndUpdate();
編集:
アプリケーションのメイン フォームを閉じるときに、フレームワークによって呼び出されるイベントの順序は次のとおりです。
MAINFORM - FormClosing
MAINFORM - FormClosed
MAINFORM - Deactivate
MAINFORM - HandleDestroyed
CONTROL - HandleDestroyed
.... - repeat for each control
CONTROL - Disposed
.... - repeat for each control
MAINFORM - Disposed
ご覧のとおり、UltraTabControl とそのすべてのページは、FormClosing イベントを受け取ったときに引き続き使用できるはずです。基本プロパティ IsDisposed はその時点でまだ false である必要があるため、TabControl は「閉じられていません」
今、私は疑問を持っています.WinFormsアプリケーションについて話しているのですか?