Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- 권한
- git
- 스프링 시큐리티
- RAISERRR
- MSSQL
- Newtonsoft.Json
- DB
- IT story
- SQL Server
- JavaScript
- SQL Server 구성 관리자
- ORM
- System.Text.Json
- 자바
- SOP
- 스프링부트
- IT
- C#
- 데이터베이스
- 프로시저
- .NET 8.0
- jpa
- SSMS
- OUT 파라미터
- cors
- ERROR_MESSAGE
- java
- springboot
- Exception in thread "main" java.lang.Error
- github
Archives
- Today
- Total
its_jh_stroy
[C#] WPF WebView2로 웹 페이지 표시하기 본문
WPF에서 웹 페이지 렌더링을 지원하는 기본적인 컨트롤은 WebBrowser이다.
하지만 WebBrowser 컨트롤은 IE 기반으로 페이지를 표시하기 때문에 최신 웹 표준을 지원하지 않는 경우도 존재한다.
따라서 페이지가 제대로 표시되지 않읗 수 있다.
cefSharp 라이브러리를 활용하면 문제를 해결할 수 있지만 .NET Framwork에서 지원하기 때문에 .NET Core에서는 사용할 수 없다.
.NET Core를 사용한다면 WebView2를 활용하여 이러한 문제를 해결할 수 있다.
라이브러리 설치
도구 - Nuget 패키지 관리자 - 솔루션용 Nuget 패키지 관리
Microsoft.Web.WebView2 설치
xaml 작업
Window 컨트롤에 아래 속성 추가
xmlns:wv2="clr-namespace:Microsoft.Web.WebView2.Wpf;assembly=Microsoft.Web.WebView2.Wpf"
WebView2 컨트롤 추가하기
<wv2:WebView2 Source="https://www.google.com" />
전체 xaml 소스
<Window x:Class="WpfApp2.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:WpfApp2"
xmlns:wv2="clr-namespace:Microsoft.Web.WebView2.Wpf;assembly=Microsoft.Web.WebView2.Wpf"
mc:Ignorable="d"
Title="MainWindow" Height="450" Width="800">
<Grid>
<wv2:WebView2 x:Name="wv" Source="https://www.google.com" />
</Grid>
</Window>
위 작업을 모두 마치고 프로그램을 실행하면 구글 페이지가 표시된다.
'C#' 카테고리의 다른 글
[C#] ASP.NET Core에서 CORS 문제 해결하기 (0) | 2024.02.08 |
---|---|
[C#] System.Text.Json과 Newtonsoft.Json (0) | 2024.01.30 |
[C#] .NET 8.0이 실행되는 과정 (0) | 2024.01.15 |
[C#] WorkerService 작업자 서비스 프로젝트에서 의존성 추가하기 (0) | 2023.12.13 |
[C#] Task와 async, await (0) | 2023.11.15 |