WebBrowser 컨트롤로 XML 표시
개요
XML을 화면에 표시하는 경우 System.Windows.Forms.WebBrowser 컨트롤을 사용하여 DocumentText 속성에 내용을 설정하여 구현할 수 있지만 태그 이름에 head 등이 있으면 잘 표시되지 않는 문제가 있습니다.
(head로 시작하는 header 등에서도 안됨)
예
표시할 XML
<?xml version="1.0" encoding="utf-8"?>
<doc>
<header>ヘッダ</header>
<data>データ</data>
</doc>
IE로 표시했을 경우, 아래 그림과 같이 된다.
IE로 표시
보통
DocumentText 에 캐릭터 라인을 설정했을 경우는 IE 와 같이 표시되지 않는다. .
컨트롤 내부에서 HTML의 HEAD 태그로 오인해 그렇게.
WebBrowser에서 표시 1
일반 코드this.webBrowser1.DocumentText = xml;
개선
XML 캐릭터 라인을 일단 파일에 보존해, Navigate 메소드를 호출하는 것으로, IE 와 같은 표시가 되었다.
WebBrowser에서 표시 2
개선 코드var path = Path.Combine(Path.GetTempPath(), $"{Guid.NewGuid()}.xml");
File.WriteAllText(path, xml);
this.webBrowser1.Navigate(path);
File.Delete(path);
Reference
이 문제에 관하여(WebBrowser 컨트롤로 XML 표시), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/Apeworks/items/5be2c0fc53a232a7905a
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
<?xml version="1.0" encoding="utf-8"?>
<doc>
<header>ヘッダ</header>
<data>データ</data>
</doc>
this.webBrowser1.DocumentText = xml;
var path = Path.Combine(Path.GetTempPath(), $"{Guid.NewGuid()}.xml");
File.WriteAllText(path, xml);
this.webBrowser1.Navigate(path);
File.Delete(path);
Reference
이 문제에 관하여(WebBrowser 컨트롤로 XML 표시), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Apeworks/items/5be2c0fc53a232a7905a텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)