문제

Microsoft에 의견을 게시했습니다 WPF의 대화 상자가 VisualStyle을 활성화하지 않음.

Joe Castro는 내가 달성하는 방법을 이해하지 못하는 해결 방법을 게시했습니다. 누구나 도울 수 있습니까?

여기에 그는 응답입니다.

APP COMPAT 이유로 응용 프로그램은 기본적으로 시스템 공통 컨트롤 (XP 이후 사용 가능)의 v6을 사용하지 않습니다. 이것은 실제로 WPF에 적용되지 않지만 기본 컨트롤을 사용할 때 몇 가지 상황에서만 볼 수 있으므로 API가 표준 컨트롤을 감싸는 Winforms만큼 널리 퍼지지 않습니다.

WPF 에서이 문제를 해결하려면 EXE의 매니페스트로 지정하여 V6 Comctl32를 명시 적으로 선택해야합니다. 이것은 EXE에서 수행되어야하므로 WPF는 DLL의 일부로 할 수 없습니다. enablevisualstyles는 런타임에이를 수행하지만 일반적 으로이 방법은 더 좋습니다.

예를 들어, 같은 것 :

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<description>MyExe.exe</description>
<dependency>
    <dependentAssembly>
     <assemblyIdentity
         type="win32"
         name="Microsoft.Windows.Common-Controls"
         version="6.0.0.0"
         processorArchitecture="*"
         publicKeyToken="6595b64144ccf1df"
         language="*"/>
    </dependentAssembly>
</dependency>
</assembly>
도움이 되었습니까?

해결책

나는 얼마 전에 내 블로그에 그것에 대해 썼습니다.

해당 게시물은 문제와 해결책을 설명합니다. http://www.nbdtech.com/blog/archive/2008/05/28/why-am---gy-good-style-file-dialogs-and-message.aspx , http://www.nbdtech.com/blog/archive/2008/06/08/will-esting-a-manifest-my-wpf-message-box-style.aspx

이 게시물은 당신이 찾고있는 것입니다. http://www.nbdtech.com/blog/archive/2008/06/16/the-application-manifest-needed-for-xp-and-vista-file.aspx

그리고 이것은 파일을 열고 대화 상자를 저장하는 Vista 스타일을 얻는 방법에 대해 이야기합니다. http://www.nbdtech.com/blog/archive/2008/07/15/vista-style-open-and-save-dialogs-with-without-using.aspx

다른 팁

Visual Basic에서는 프로젝트 속성이 약간 다르게 구성됩니다. 이 질문을 발견하고 VS2010의 VB에 있다면 다음 지침을 따르십시오. app.manifest 파일.

  1. an을 만들려면 app.manifest 파일, 프로젝트로 이동하여 속성을 선택하십시오. 그런 다음 클릭하십시오 창 설정을 봅니다, 아래의 신청 탭.
    • ViewWindowSettings
  2. 이것은 생성하고 열어야합니다 app.manifest 파일은 귀하에게 저장됩니다 내 프로젝트 폴더
    • app.manifest

추가 읽기 : WPF 메시지 상자 창 스타일

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top