10

TabControl 内に TabControl があります。外側の TabControl の左側にタブを表示するようにします。ただし、Visual Styles を有効にすると、左揃えの TabControls が正しく表示されません。外側の TabControl だけに対して Visual Styles を無効にすることはできますか?

私はサードパーティの TabControl の代替品を認識しています - それは私が求めているものではありません。

4

1 に答える 1

25

プロジェクトに新しいクラスを追加し、以下に示すコードを貼り付けます。建てる。ツールボックスの上部から新しいコントロールをフォームにドロップします。子コントロールのビジュアル スタイルは保持されます。

using System;
using System.Windows.Forms;
using System.Runtime.InteropServices;

public class FixedTabControl : TabControl {
  [DllImportAttribute("uxtheme.dll")]
  private static extern int SetWindowTheme(IntPtr hWnd, string appname, string idlist);

  protected override void OnHandleCreated(EventArgs e) {
    SetWindowTheme(this.Handle, "", "");
    base.OnHandleCreated(e);
  }
}
于 2008-11-18T20:15:46.153 に答える