スタックパネル管理用の TabControl ボタンの非表示
ユーザー インターフェイスの設計では、さまざまなデータ マスクを表示する複数のパネルを管理するのが難しい場合があります。一般的なアプローチは、パネルの選択に TreeView コントロールを使用し、パネルの表示/非表示を手動で処理することです。ただし、パネルの追加やサイズ変更を行う場合、この方法は面倒になる可能性があります。
考えられる解決策
2 つの解決策が考えられます:
最適解決策
最も効果的な解決策には、Windows API の魔法を少し活用することが含まれます。カスタム クラスを作成し、WndProc メソッドを実装すると、タブ サイズを調整するために TabControl が送信する TCM_ADJUSTRECT メッセージをトラップできます。これにより、実行時にタブ サイズを 0 に調整して、タブ ボタンを効果的に非表示にすることができます。
SelectedIndex または SelectedTab プロパティを使用すると、項目の選択には TreeView を使用し、項目の選択には TabControl を使用して、パネル間をシームレスに切り替えることができます。パネルlayout.
実装
using System; using System.Windows.Forms; class StackPanel : TabControl { protected override void WndProc(ref Message m) { // Hide tabs by trapping the TCM_ADJUSTRECT message if (m.Msg == 0x1328 && !DesignMode) m.Result = (IntPtr)1; else base.WndProc(ref m); } }
以上がスタックパネル管理に使用しながら TabControl ボタンを非表示にするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。