5

WebBrowser 컨트롤을 사용하여 웹 사이트를 탐색하는 동안 IE8 호환성 문제가 발생합니다. 이상한 것은 때로는 웹 사이트 작품이지만, 그럴 가능성은 그다지 높지 않습니다. 가끔 페이지를 새로 고칠 수 있으며 잘 작동합니다.WebBrowser 컨트롤 IE8 호환 모드 On/Off 스위치

IE8의 페이지로 이동하면 동일한 CSS 렌더링 문제가 발생하여 호환 모드로 전환되어 올바르게 표시되고 올바르게 렌더링됩니다.

WebBrowser 컨트롤에 대해이 효과를 시뮬레이트하는 방법이 있습니까? Internet Explorer에서 할 수있는 것처럼 버튼을 클릭하고 모드를 전환 할 수 있기를 원합니다.

이것이 가능합니까? 그렇다면 누구나 어떻게 알 수 있습니까?

감사

+0

더 나은, 나는이 솔루션은 어떻게 든 모두 대신 IE8의 IE7을 실행하는 레지스트리를 편집하는 것이라고 생각 또 다른 대안. – VsFox

답변

4

겠습니까 this post on IEBlog 웹 브라우저 렌더링 모드와 IE8 도움이 어떻습니까? 레지스트리의 키를 사용하여 응용 프로그램에 특정한 렌더링 모드를 설정해야하는 것처럼 보입니다.

+0

+1 알림 표시 줄에 새로운 답변 1 개가로드 될 때 입력하는 중입니다. –

+0

고맙습니다. 이 문제를 해결할 방법을 찾아야하고 IEBlog 게시물에 대한 링크와 함께이 질문을 발견했습니다. 이제 문제를 해결했습니다! –

4

나는 레지스트리 엔트리 답변이 게시 된 것을 알고 있으므로 대안을 제시 할 것이라고 생각했습니다.

사이트를 소유하고 있으며 실행되는 서버에 대한 사용 권한이 있습니까? 그렇다면 사이트/서버의 모든 페이지에 대해 보낼 X-UA 호환 헤더를 설정할 수 있습니다. Apache/IIS7 링크에 대한 정보는 http://msdn.microsoft.com/en-us/library/cc288325(VS.85).aspx#Servers을 참조하십시오.

+0

제안에 감사하지만 더 역동적 인 솔루션을 찾고 있습니다. – VsFox

+0

레지스트리 옵션을 사용할 수 없지만 정상적으로 작동합니다. – Gabe

0

당신은 IE 레지스트리 키에서 "인터넷 기능 조절"을 사용하여 응용 프로그램 내부에 내장 된 웹 브라우저에 대한 렌더링 모드를 강제 할 수

HKEY_LOCAL_MACHINE or HKEY_CURRENT_USER 
    SOFTWARE 
     Microsoft 
     Internet Explorer 
      Main 
       FeatureControl 
        FEATURE_BROWSER_EMULATION 
        YouApp.exe = (DWORD) 00000000 (see value below)
  • 값 9999 (0x270F)
    Windows Internet Explorer의 9. 웹 페이지는! DOCTYPE 지시문과 상관없이 IE9 표준 모드로 표시됩니다.

  • 값 9000 (0x2328) 표준 기반! DOCTYPE 지시어를 포함
    인터넷 익스플로러 9 웹 페이지는 IE9 모드로 표시됩니다.

  • 값 8888 (0x22B8)는
    없이 웹 페이지를 다음! DOCTYPE 지시어, IE8 표준 모드로 표시되어있다.

  • 8000 (내지 0x1F40) 표준 기반! DOCTYPE 지시어를 포함
    웹 페이지가 IE8 모드로 표시됩니다.

  • 7000 (0x1B58) 표준 기반! DOCTYPE 지시어를 포함
    웹 페이지는 IE7 표준 모드로 표시됩니다.

+1 현재 설치된 버전에서 WebBrowser를 항상 실행하는 것이 가치있는 경우.

출처 : http://msdn.microsoft.com/en-us/library/ee330730%28VS.85%29.aspx#browser_emulation 아직