c# - 하기 - xaml 디자인
하나의 컨트롤에 대해서만 비주얼 스타일을 비활성화하려면 어떻게해야합니까? (1)
TabControl 내에 TabControl이 있습니다. 바깥 쪽 TabControl에서 왼쪽에 탭을 표시하고 싶습니다. 그러나 Visual Styles를 사용하면 왼쪽 맞춤 TabControl이 제대로 표시되지 않습니다. 바깥 쪽 TabControl에 대해서만 비주얼 스타일을 비활성화 할 수 있습니까?
나는 제 3 자 TabControl 대체품을 알고 있습니다. 그건 내가 쓴 것이 아닙니다.
프로젝트에 새 클래스를 추가하고 아래 표시된 코드를 붙여 넣습니다. 짓다. 새 컨트롤을 도구 상자의 위쪽에서 폼으로 끌어다 놓습니다. 자식 컨트롤의 비주얼 스타일은 유지됩니다.
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);
}
}