WebView 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
앱에서 HTML 콘텐츠를 호스트하는 컨트롤을 제공합니다.
public ref class WebView sealed : FrameworkElement
/// [Windows.Foundation.Metadata.Activatable(Windows.UI.Xaml.Controls.IWebViewFactory4, 65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class WebView final : FrameworkElement
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(Windows.UI.Xaml.Controls.IWebViewFactory4, 65536, "Windows.Foundation.UniversalApiContract")]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
class WebView final : FrameworkElement
[Windows.Foundation.Metadata.Activatable(typeof(Windows.UI.Xaml.Controls.IWebViewFactory4), 65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.Activatable(65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class WebView : FrameworkElement
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(typeof(Windows.UI.Xaml.Controls.IWebViewFactory4), 65536, "Windows.Foundation.UniversalApiContract")]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
public sealed class WebView : FrameworkElement
Public NotInheritable Class WebView
Inherits FrameworkElement
<WebView .../>
- 상속
- 특성
Windows 요구 사항
| 디바이스 패밀리 |
Windows 10 (10.0.10240.0에서 도입되었습니다.)
|
| API contract |
Windows.Foundation.UniversalApiContract (v1.0에서 도입되었습니다.)
|
예제
다음 코드 예제에서는 WebView를 명명Address된 TextBox URI로 이동하는 방법을 보여 줍니다.
try
{
Uri targetUri = new Uri(Address.Text);
webView1.Navigate(targetUri);
}
catch (FormatException ex)
{
// Bad address.
}
다음 코드 예제에서는 WebView 컨트롤에 로컬 HTML을 로드하는 방법을 보여 줍니다.
webView2.NavigateToString(
"<html><body><h2>This is an HTML fragment</h2></body></html>");
설명
WebView 컨트롤을 사용하여 앱에서 웹 콘텐츠를 호스트합니다.
WebView는 하위 클래스가 Control 아니므로 컨트롤 템플릿이 없습니다. WebView의 일부 시각적 측면을 제어하는 다양한 속성을 설정할 수 있습니다. 표시 영역은 및 Height 속성에 Width 의해 제한됩니다. WebView를 변환, 크기 조정, 기울이기 및 회전하려면 이 속성을 사용합니다 RenderTransform . WebView의 불투명도를 제어하려면 속성을 설정합니다 Opacity . HTML 콘텐츠에서 색을 지정하지 않을 때 웹 페이지 배경으로 사용할 색을 지정하려면 속성을 설정합니다 DefaultBackgroundColor .
이 속성을 사용하여 WebView에 현재 표시된 HTML 문서의 제목을 DocumentTitle 가져올 수 있습니다.
WebView는 하위 클래스는 아니지만 Control 키보드 입력 포커스를 받고 탭 시퀀스에 참여합니다. 메서드 및 GotFocus LostFocus 이벤트를 제공하지만 Focus 탭 관련 속성은 없습니다. 탭 순서상 해당 위치는 XAML 문서 순서상 위치와 같습니다. 탭 시퀀스에는 입력 포커스를 받을 수 있는 WebView 콘텐츠의 모든 요소가 포함됩니다.
이벤트 테이블에 표시된 것처럼 WebView는 상속된 UIElement대부분의 사용자 입력 이벤트(예: KeyDown, KeyUp및 PointerPressed)를 지원하지 않습니다. 일반적인 해결 방법은 JavaScript eval 함수와 함께 HTML InvokeScriptAsync 이벤트 처리기를 사용하고 HTML 이벤트 처리기에서 window.external.notify 를 사용하여 애플리케이션WebView.ScriptNotify에 알리는 것입니다.
Windows 10용으로 컴파일된 앱에서 WebView는 Microsoft Edge 렌더링 엔진을 사용하여 HTML 콘텐츠를 표시합니다. Windows 8 또는 Windows 8.1용으로 컴파일된 앱에서 WebView는 문서 모드에서 Internet Explorer 11을 사용합니다. Microsoft Silverlight 또는 PDF(이식 가능한 문서 형식) 파일과 같은 Microsoft ActiveX 컨트롤 또는 플러그 인은 지원되지 않습니다.
XAML Islands: 이 컨트롤은 XAML Islands 앱에서 지원되지 않습니다. 대안은 XAML Islands - 웹 보기 컨트롤을 참조하세요.
콘텐츠로 이동
WebView는 기본 탐색을 위한 여러 API를 GoForwardCanGoForwardCanGoBackRefreshStop제공합니다. GoBack 이러한 기능을 사용하여 일반적인 웹 검색 기능을 앱에 추가할 수 있습니다.
WebView의 초기 콘텐츠를 설정하려면 XAML에서 속성을 설정합니다 Source . XAML 파서는 문자열을 자동으로 .로 Uri변환합니다.
<!-- Source file is on the web. -->
<WebView x:Name="webView1" Source="http://www.contoso.com"/>
<!-- Source file is in local storage. -->
<WebView x:Name="webView2" Source="ms-appdata:///local/intro/welcome.html"/>
<!-- Source file is in the app package. -->
<WebView x:Name="webView3" Source="ms-appx-web:///help/about.html"/>
이 속성은 Source 코드에서 설정할 수 있지만 이렇게 하는 대신 일반적으로 Navigate 메서드 중 하나를 사용하여 코드에서 콘텐츠를 로드합니다.
웹 콘텐츠를 로드하려면 http 또는 https 스키 마를 Uri 사용하는 메서드를 사용합니다.Navigate
webView1.Navigate(new Uri("http://www.contoso.com"));
POST 요청 및 HTTP 헤더를 사용하여 URI(Uniform Resource Identifier)로 이동하려면 이 메서드를 NavigateWithHttpRequestMessage 사용합니다. 이 메서드는 속성 값에 대해서만 HttpMethod.Post HttpMethod.Get HttpRequestMessage.Method 지원합니다.
앱 LocalFolder 또는 TemporaryFolder 데이터 저장소에서 압축되지 않은 및 암호화되지 않은 콘텐츠를 로드하려면 ms-appdata 체계를 Uri 사용하는 메서드를 사용합니다Navigate. 이 체계에 대한 WebView 지원을 사용하려면 로컬 또는 임시 폴더 아래의 하위 폴더에 콘텐츠를 배치해야 합니다. 이렇게 하면 ms-appdata:///local/ folder 파일.html 및 ms-appdata:///temp/ folder/파일.html 같은 URI(Uniform Resource Identifier/)로 탐색 할 수 있습니다. 압축되거나 암호화된 파일을 로드하려면 .를 참조하세요 NavigateToLocalStreamUri.
이러한 각 첫 번째 수준 하위 폴더는 다른 첫 번째 수준 하위 폴더의 콘텐츠와 분리됩니다. 예를 들어 ms-appdata:///temp/folder1/file.html로 이동할 수 있지만 이 파일에서 ms-appdata:///temp/folder2/file.html에 대한 링크를 사용할 수는 없습니다. 그러나 ms-appx-web 스키마를 사용하여 앱 패키지의 HTML 콘텐츠와 http 및 https URI(Uniform Resource Identifier) 스키마를 사용하여 웹 콘텐츠에 연결할 수 있습니다.
webView1.Navigate(new Uri("ms-appdata:///local/intro/welcome.html"));
앱 패키지에서 콘텐츠를 로드하려면 ms-appx-web 스키마를 Uri 사용하는 메서드를 사용합니다Navigate.
webView1.Navigate(new Uri("ms-appx-web:///help/about.html"));
메서드를 사용하여 사용자 지정 확인자를 통해 로컬 콘텐츠를 로드할 NavigateToLocalStreamUri 수 있습니다. 이 기능을 통해 웹 기반 콘텐츠를 오프라인에서 사용하기 위해 다운로드 및 캐싱, 압축 파일에서 콘텐츠 추출 등의 고급 시나리오를 사용할 수 있습니다.
탐색 이벤트에 응답
WebView는 탐색 및 콘텐츠 로드 상태에 응답하는 데 사용할 수 있는 여러 이벤트를 제공합니다. 이벤트는 루트 WebView 콘텐츠에 대해 다음 순서로 발생합니다.
- NavigationStarting- WebView가 새 콘텐츠로 이동하기 전에 발생합니다. 속성을 true로 설정하여 이 이벤트에 대한 처리기에서 탐색을 WebViewNavigationStartingEventArgs.Cancel 취소할 수 있습니다.
webView1.NavigationStarting += webView1_NavigationStarting;
private void webView1_NavigationStarting(object sender, WebViewNavigationStartingEventArgs args)
{
// Cancel navigation if URL is not allowed. (Implemetation of IsAllowedUri not shown.)
if (!IsAllowedUri(args.Uri))
args.Cancel = true;
}
- ContentLoading - WebView가 새 콘텐츠를 로드하기 시작했을 때 발생합니다.
webView1.ContentLoading += webView1_ContentLoading;
private void webView1_ContentLoading(WebView sender, WebViewContentLoadingEventArgs args)
{
// Show status.
if (args.Uri != null)
{
statusTextBlock.Text = "Loading content for " + args.Uri.ToString();
}
}
- DOMContentLoaded - WebView가 현재 HTML 콘텐츠 구문 분석을 완료할 때 발생합니다.
webView1.DOMContentLoaded += webView1_DOMContentLoaded;
private void webView1_DOMContentLoaded(WebView sender, WebViewDOMContentLoadedEventArgs args)
{
// Show status.
if (args.Uri != null)
{
statusTextBlock.Text = "Content for " + args.Uri.ToString() + " has finished loading";
}
}
- NavigationCompleted - WebView가 현재 콘텐츠 로드를 완료했거나 탐색에 실패한 경우에 발생합니다. 탐색에 실패했는지 여부를 확인하려면 클래스의 IsSuccess WebViewNavigationCompletedEventArgs 속성과 WebErrorStatus 속성을 확인합니다.
webView1.NavigationCompleted += webView1_NavigationCompleted;
private void webView1_NavigationCompleted(WebView sender, WebViewNavigationCompletedEventArgs args)
{
if (args.IsSuccess == true)
{
statusTextBlock.Text = "Navigation to " + args.Uri.ToString() + " completed successfully.";
}
else
{
statusTextBlock.Text = "Navigation to: " + args.Uri.ToString() +
" failed with error " + args.WebErrorStatus.ToString();
}
}
WebView 콘텐츠의 각 iframe 에 대해 비슷한 이벤트가 동일한 순서로 발생합니다.
- FrameNavigationStarting - WebView의 프레임이 새 콘텐츠로 이동하기 전에 발생합니다.
- FrameContentLoading - WebView의 프레임이 새 콘텐츠를 로드하기 시작했을 때 발생합니다.
- FrameDOMContentLoaded - WebView의 프레임이 현재 HTML 콘텐츠 구문 분석을 완료할 때 발생합니다.
- FrameNavigationCompleted - WebView의 프레임이 콘텐츠 로드를 완료할 때 발생합니다.
잠재적 문제에 응답
장기 실행 스크립트, WebView에서 로드할 수 없는 콘텐츠 및 안전하지 않은 콘텐츠의 경고와 같은 콘텐츠의 잠재적인 문제에 대응할 수 있습니다.
스크립트를 실행하는 동안 앱이 응답하지 않는 것처럼 보일 수도 있습니다. 이 LongRunningScriptDetected 이벤트는 WebView가 JavaScript를 실행하는 동안 주기적으로 발생하며 스크립트를 중단할 수 있는 기회를 제공합니다. 스크립트가 실행된 기간을 확인하려면 .의 WebViewLongRunningScriptDetectedEventArgs속성을 확인 ExecutionTime 합니다. 스크립트를 중지하려면 이벤트 인수 StopPageScriptExecution 속성을 true 로 설정합니다. 중지된 스크립트는 후속 WebView 탐색 중에 다시 로드되지 않는 한 다시 실행되지 않습니다.
WebView 컨트롤은 임의의 파일 형식을 호스트할 수 없습니다. WebView에서 호스팅 UnviewableContentIdentified 할 수 없는 콘텐츠를 로드하려고 하면 이벤트가 발생합니다. 이 이벤트를 처리하고 사용자에게 알리거나 클래스를 Launcher 사용하여 파일을 외부 브라우저 또는 다른 앱으로 리디렉션할 수 있습니다.
마찬가지로 이 UnsupportedUriSchemeIdentified 이벤트는 지원되지 않는 URI(Uniform Resource Identifier) 체계가 웹 콘텐츠(예: fbconnect:// 또는 mailto://)에서 호출될 때 발생합니다. 기본 시스템 시작 관리자가 URI(Uniform Resource Identifier)를 시작하도록 허용하는 대신 사용자 지정 동작을 제공하도록 이 이벤트를 처리할 수 있습니다.
이 UnsafeContentWarningDisplaying 이벤트는 WebView가 SmartScreen 필터에 의해 안전하지 않은 것으로 보고된 콘텐츠에 대한 경고 페이지를 표시할 때 발생합니다. 사용자가 계속 탐색하도록 선택할 경우 이후에 페이지로 이동할 때는 경고가 표시되지 않으며 이벤트도 발생하지 않습니다.
WebView 콘텐츠에 대한 특수 사례 처리
속성 및 ContainsFullScreenElementChanged 이벤트를 사용하여 ContainsFullScreenElement 전체 화면 비디오 재생과 같은 웹 콘텐츠에서 전체 화면 환경을 검색, 응답 및 사용하도록 설정할 수 있습니다. 예를 들어 이벤트를 사용하여 ContainsFullScreenElementChanged WebView의 크기를 조정하여 앱 보기 전체를 차지하거나, 다음 예제와 같이 전체 화면 웹 환경을 원하는 경우 창이 있는 앱을 전체 화면 모드로 전환할 수 있습니다.
// Assume webView is defined in XAML
webView.ContainsFullScreenElementChanged += webView_ContainsFullScreenElementChanged;
private void webView_ContainsFullScreenElementChanged(WebView sender, object args)
{
var applicationView = ApplicationView.GetForCurrentView();
if (sender.ContainsFullScreenElement)
{
applicationView.TryEnterFullScreenMode();
}
else if (applicationView.IsFullScreenMode)
{
applicationView.ExitFullScreenMode();
}
}
이벤트를 사용하여 NewWindowRequested 호스트된 웹 콘텐츠가 팝업 창과 같은 새 창을 표시하도록 요청하는 경우를 처리할 수 있습니다. 다른 WebView 컨트롤을 사용하여 요청된 창의 내용을 표시할 수 있습니다.
이벤트를 사용하여 PermissionRequested 특수 기능이 필요한 웹 기능을 사용하도록 설정합니다. 현재 이러한 기능에는 지리적 위치, IndexedDB 스토리지, 사용자 오디오 및 동영상(예: 마이크 또는 webcam에서 제공)이 포함됩니다. 앱이 사용자 위치나 사용자 미디어에 액세스하는 경우에도 앱 매니페스트에서 이 기능을 선언해야 합니다. 예를 들어 지리적 위치를 사용하는 앱은 Package.appxmanifest에 최소한 다음과 같은 기능 선언이 있어야 합니다.
<Capabilities>
<Capability Name="internetClient"/>
<DeviceCapability Name="location"/>
</Capabilities>
이벤트를 처리하는 PermissionRequested 앱 외에도 사용자는 이러한 기능을 사용하도록 설정하기 위해 위치 또는 미디어 기능을 요청하는 앱에 대한 표준 시스템 대화 상자를 승인해야 합니다.
다음은 앱이 Bing의 맵에서 지리적 위치를 사용하도록 설정하는 방법의 예입니다.
// Assume webView is defined in XAML
webView.PermissionRequested += webView_PermissionRequested;
private void webView_PermissionRequested(WebView sender, WebViewPermissionRequestedEventArgs args)
{
if (args.PermissionRequest.PermissionType == WebViewPermissionType.Geolocation &&
args.PermissionRequest.Uri.Host == "www.bing.com")
{
args.PermissionRequest.Allow();
}
}
앱에서 권한 요청에 응답하기 위해 사용자 입력 또는 기타 비동기 작업이 필요한 경우 나중에 작업할 수 있는 작업을 만드는 WebViewDeferredPermissionRequest 방법을 WebViewPermissionRequest 사용합니다Defer. WebViewPermissionRequest.Defer을 참조하세요.
사용자가 WebView에 호스트된 웹 사이트에서 안전하게 로그아웃해야 하거나 보안이 중요한 다른 경우에는 정적 메서드 ClearTemporaryWebDataAsync 를 호출하여 WebView 세션에서 로컬로 캐시된 모든 콘텐츠를 지웁니다. 이렇게 하면 악의적인 사용자가 중요한 데이터에 액세스할 수 없습니다.
WebView 콘텐츠와 상호 작용
WebView 콘텐츠에 스크립트를 호출하거나 삽입하는 방법과 WebView 콘텐츠에서 정보를 다시 가져오는 이벤트를 사용하여 InvokeScriptAsync WebView의 콘텐츠와 ScriptNotify 상호 작용할 수 있습니다.
WebView 콘텐츠 내에서 JavaScript를 호출하려면 이 메서드를 InvokeScriptAsync 사용합니다. 호출된 스크립트는 문자열 값만 반환할 수 있습니다.
예를 들어 WebView라는 콘텐츠 webView1 에 매개 변수 3개만 사용하는 함수 setDate 가 포함되어 있으면 다음과 같이 호출할 수 있습니다.
string[] args = {"January", "1", "2000"};
string returnValue = await webView1.InvokeScriptAsync("setDate", args);
JavaScript eval 함수와 함께 사용하여 InvokeScriptAsync 웹 페이지에 콘텐츠를 삽입할 수 있습니다.
여기서 XAML TextBox (nameTextBox.Text)의 텍스트는 호스트되는 HTML 페이지의 div에 기록됩니다 webView1.
private async void Button_Click(object sender, RoutedEventArgs e)
{
string functionString = String.Format("document.getElementById('nameDiv').innerText = 'Hello, {0}';", nameTextBox.Text);
await webView1.InvokeScriptAsync("eval", new string[] { functionString });
}
WebView 콘텐츠의 스크립트는 window.external.notify 를 문자열 매개 변수와 함께 사용하여 정보를 앱으로 다시 보낼 수 있습니다. 이러한 메시지를 받으려면 이벤트를 처리합니다 ScriptNotify .
window.external.notify 를 호출할 때 외부 웹 페이지에서 이벤트를 발생 ScriptNotify 하도록 설정하려면 앱 매니페스트의 ApplicationContentUriRules 섹션에 페이지의 URI(Uniform Resource Identifier)를 포함해야 합니다. (Package.appxmanifest 디자이너의 콘텐츠 URI 탭에 있는 Microsoft Visual Studio에서 이 작업을 수행할 수 있습니다.) 이 목록의 URI는 HTTPS를 사용해야 하며 하위 도메인 와일드카드(예: https://.microsoft.com)를 포함할 수 있지만 도메인 와일드카드(예: https://.com 및 https://)를 포함할 수 없습니다. 매니페스트 요구 사항은 앱 패키지에서 시작되거나 ms-local-stream:// URI를 사용하거나 사용하여 로드되는 콘텐츠에 NavigateToString적용되지 않습니다.
WebView에서 Windows 런타임에 액세스
Windows 10부터 이 AddWebAllowedObject 메서드를 사용하여 Windows 런타임 구성 요소의 네이티브 클래스 인스턴스를 WebView의 JavaScript 컨텍스트에 삽입할 수 있습니다. 이렇게 하면 해당 WebView의 JavaScript 콘텐츠에서 해당 개체의 네이티브 메서드, 속성 및 이벤트에 대한 모든 권한을 사용할 수 있습니다. 클래스는 특성으로 AllowForWeb 데코레이팅되어야 합니다.
예를 들어 이 코드는 Windows 런타임 구성 요소에서 가져온 인스턴스 MyClass 를 WebView에 삽입합니다.
private void webView_NavigationStarting(WebView sender, WebViewNavigationStartingEventArgs args)
{
if (args.Uri.Host == "www.contoso.com")
{
webView.AddWebAllowedObject("nativeObject", new MyClass());
}
}
자세한 내용은 WebView.AddWebAllowedObject를 참조하세요.
또한 WebView의 신뢰할 수 있는 JavaScript 콘텐츠는 RuntimeAPI를 Windows 직접 액세스할 수 있습니다. WebView에서 호스트되는 웹앱에 대한 강력한 네이티브 기능을 제공합니다. 이 기능을 사용하려면 신뢰할 수 있는 콘텐츠에 대한 URI(Uniform Resource Identifier)를 Package.appxmanifest에 있는 앱의 ApplicationContentUriRules 허용 목록에 추가해야 하며 WindowsRuntimeAccess는 특별히 "all"으로 설정되어야 합니다.
이 예제에서는 앱 매니페스트의 한 섹션을 보여 줍니다. 여기서는 로컬 URI(Uniform Resource Identifier)에 Windows 런타임 대한 액세스 권한이 부여됩니다.
<Applications>
<Application Id="App"
...
<uap:ApplicationContentUriRules>
<uap:Rule Match="ms-appx-web:///Web/App.html" WindowsRuntimeAccess="all" Type="include"/>
</uap:ApplicationContentUriRules>
</Application>
</Applications>
웹 콘텐츠 호스팅 옵션
Windows 10부터 속성(형식WebViewSettings)을 사용하여 WebView.Settings JavaScript 및 IndexedDB를 사용할 수 있는지 여부를 제어할 수 있습니다. 예를 들어 WebView를 사용하여 엄격하게 정적 콘텐츠를 표시하는 경우 최상의 성능을 위해 JavaScript를 사용하지 않도록 설정할 수 있습니다.
WebView 콘텐츠 캡처
WebView 콘텐츠를 다른 앱과 공유할 수 있도록 하려면 선택한 콘텐츠를 로 반환하는 메서드를 DataPackage사용합니다CaptureSelectedContentToDataPackageAsync. 이 메서드는 비동기이므로 비동기 호출이 완료되기 전에 이벤트 처리기가 반환되지 않도록 DataRequested 지연을 사용해야 합니다.
WebView의 현재 콘텐츠에 대한 미리 보기 이미지를 얻으려면 이 메서드를 CapturePreviewToStreamAsync 사용합니다. 이 메서드는 현재 콘텐츠의 이미지를 만들고 지정된 스트림에 씁니다.
실행 모드
기본적으로 WebView 콘텐츠는 데스크톱 디바이스 패밀리의 디바이스에서 UI 스레드에서 호스트되고 다른 모든 디바이스의 UI 스레드에서 호스트됩니다. 정적 속성을 사용하여 WebView.DefaultExecutionMode 현재 클라이언트에 대한 기본 스레딩 동작을 쿼리할 수 있습니다. 필요한 경우 생성자를 사용하여 WebView(WebViewExecutionMode) 이 동작을 재정의할 수 있습니다.
지원되는 WebViewExecutionMode 값은 다음과 같습니다.
- SameThread - WebView 콘텐츠가 UI 스레드에서 호스트됩니다.
- SeparateThread - WebView 콘텐츠는 UI 스레드의 별도 스레드에서 호스트됩니다.
- SeparateProcess - (Windows 10 버전 1803 이상) WebView 콘텐츠는 앱 프로세스의 별도 프로세스에서 호스트됩니다. 앱의 모든 WebView 인스턴스는 동일한 별도의 프로세스를 공유하며 WebView 인스턴스당 별도의 프로세스는 없습니다.
별도의 프로세스에서 실행하는 경우 WebView는 두 가지 동작 차이점을 설명합니다.
- WebView 프로세스가 종료 될 수 있습니다. 이벤트를 수신 대기하여 SeparateProcessLost 이 알림을 받을 수 있습니다.
- WebView 프로세스는 키보드 포커스를 비동기적으로 거부할 수 있습니다. 이 경우 WebView.Focus 메서드는 true 를 반환한 다음 즉시(비동기적으로) 포커스가 WebView에서 이동합니다. 포커스를 이동하는 다른 방법은 FocusManager.TryMoveFocus와 같이 유사하게 동작합니다. 또는 FocusManager.TryMoveFocusAsync API를 사용하여 더 명시적으로 추적할 FocusManager.TryFocusAsync 수 있습니다.
이 예제에서는 호스트 앱에서 별도의 프로세스로 실행되고 별도의 프로세스가 손실될 경우 다시 만들어지는 WebView 컨트롤을 만드는 방법을 보여 줍니다.
<Grid>
<Border x:Name="WebViewBorder" Loaded="WebViewBorder_Loaded" />
</Grid>
...
public sealed partial class MainPage : Page
{
public MainPage()
{
this.InitializeComponent();
var webView = new WebView(WebViewExecutionMode.SeparateProcess);
WebViewBorder.Child = webView;;
InitializeWebView(webView);
}
void InitializeWebView(WebView webView)
{
webView.Source = this.WebViewSourceUri;
webView.SeparateProcessLost += (sender, e) =>
{
var newWebView = new WebView(WebViewExecutionMode.SeparateProcess);
InitializeWebView(newWebView);
WebViewBorder.Child = newWebView;
};
}
}
참고
모바일 디바이스의 UI 스레드에서 콘텐츠를 호스팅할 때 성능 문제가 있을 수 있으므로 변경할 DefaultExecutionMode때 모든 대상 디바이스에서 테스트해야 합니다.
UI 스레드에서 콘텐츠를 호스트하는 WebView는 WebView 컨트롤에서 부모 컨트롤(예: FlipViewScrollViewer기타 관련 컨트롤)으로 전파하는 제스처가 필요한 부모 컨트롤과 호환되지 않습니다. 이러한 컨트롤은 오프 스레드 WebView에서 시작된 제스처를 받을 수 없습니다. 또한 스레드 외 웹 콘텐츠 인쇄는 직접 지원되지 않습니다. 대신 채우기가 있는 WebViewBrush 요소를 인쇄해야 합니다.
별도의 프로세스에서 WebView에 대한 포커스 동작
앱 프로세스에서 실행하든 별도의 프로세스에서 실행하든 WebView.Focus 메서드를 호출하여 WebView에 포커스를 설정할 수 있습니다. 이는 Control.Focus 및 Hyperlink.Focus 메서드와 동일합니다(WebView는 Control에서 파생되지 않음).
마찬가지로 클래스의 FocusManager 여러 메서드는 WebView(또는 Control 또는 Hyperlink)에 영향을 줄 수 있습니다. TryMoveFocus, FindNextFocusableElement, FindLastFocusableElement 및 GetFocusedElement 입니다. 예를 들어 TryMoveFocus는 포커스를 WebView로 이동하고 GetFocusedElement는 포커스가 있는 WebView를 반환합니다.
마지막으로, WebView 간에 포커스를 이동하면 WebView 자체와 포커스를 잃거나 받는 요소 모두에서 포커스 이벤트가 발생합니다. 이벤트는 LosingFocus, LostFocus, GettingFocus 및 GotFocus 입니다. 예를 들어 포커스가 컨트롤에서 WebView로 이동하면 Control은 LosingFocus 및 LostFocus 이벤트를 발생시키고 WebView는 GettingFocus 및 GotFocus 이벤트를 발생합니다.
WebView가 별도의 프로세스에서 실행되면 이러한 API의 동작이 약간 변경됩니다. WebView가 포커스가 있다고 가정하면 WebView.Focus 메서드는 true(성공)를 반환하지만 포커스는 아직 이동되지 않았습니다. WebView.Focus 메서드 대신 FocusManager.TryMoveFocus가 호출되고 WebView를 다음 포커스 가능 요소로 식별하는 경우에도 마찬가지입니다.
동작의 차이점은 다음과 같습니다.
- FocusManager.GetFocusedElement는 비동기 작업이 완료될 때까지 WebView를 반환하지 않습니다.
- 포커스가 손실되는 컨트롤은 해당 LosingFocus 이벤트를 동기적으로 받습니다. 그러나 비동기 작업이 완료될 때까지는 LostFocus를 수신하지 않습니다.
- 마찬가지로 GettingFocus 이벤트는 WebView에서 동기적으로 발생합니다. 그러나 비동기 작업이 완료될 때까지는 GotFocus 이벤트가 발생하지 않습니다.
FocusManager.TryFocusAsync를 대신 호출하는 경우 이 변경 내용이 변경되지 않습니다. 그러나 비동기 메서드를 사용하면 포커스 변경이 성공했는지 확인할 수 있습니다.
별도의 프로세스에서 WebView 이외의 요소에서 FocusManager.TryMoveFocusAsync를 호출하면 동기적으로 완료됩니다.
이 예제에서는 포커스를 다음 논리 요소로 이동하는 방법을 보여 주지만 실패하면 포커스를 초기 위치로 복원합니다.
async void MoveFocus(WebView webView))
{
FocusMovementResult result;
result = await FocusManager.TryFocusAsync(webView, FocusState.Programmatic);
if (!result.Succeeded)
{
// Reset focus to the starting position
this.Focus(FocusState.Programmatic);
}
}
경고 사용
WebView에서 호스트되는 웹 페이지가 JavaScript 경고 함수를 사용하는 경우 표시되지 않습니다. 이는 WebView의 모든 버전에 대해 설계되었습니다.
경고 에 의해 표시되는 정보를 가로채 호스트 애플리케이션에서 원하는 대로 수행할 수 있습니다. 이것이 가능한지 여부는 페이지가 작성되는 방식과 해당 페이지를 제어할 수 있는지 여부에 따라 달라집니다. 이 작업을 수행할 수 있는 한 가지 기술을 보여 주는 샘플을 사용할 수 있습니다. 샘플은 Windows 8.1 및 Windows Phone 8.1용으로 작성되었지만 UWP(유니버설 Windows 플랫폼)를 사용하는 앱에서도 작동합니다. 그러나 이는 모든 시나리오에서 작동하지 않을 수 있습니다.
유니버설 Windows 앱 샘플의 WebView에서 JavaScript 경고를 가로채는 방법
이전 버전에 대한 참고 사항
Windows 8.1
다음 WebView API는 Windows 8.1에서 더 이상 사용되지 않습니다.
- LoadCompleted와 NavigationFailed을 참조하세요. 대신 NavigationCompleted를 사용하세요.
- InvokeScript. 대신 InvokeScriptAsync를 사용하세요.
- DataTransferPackage와 DataTransferPackageProperty을 참조하세요. 대신 CaptureSelectedContentToDataPackageAsync를 사용하세요.
- AllowedScriptNotifyUris, AnyScriptNotifyUri및 AllowedScriptNotifyUrisProperty. 대신 앱 매니페스트의 ApplicationContentUriRules 섹션에 페이지의 URI를 포함합니다.
Windows 이벤트만 처리할 UnsafeContentWarningDisplaying 수 있습니다. 이 이벤트는 WebView에서 SmartScreen 필터에 의해 안전하지 않은 것으로 보고된 콘텐츠에 대한 경고 페이지를 표시할 때 발생합니다. 사용자가 계속 탐색하도록 선택할 경우 이후에 페이지로 이동할 때는 경고가 표시되지 않으며 이벤트도 발생하지 않습니다. 이 이벤트는 Windows Phone 대해 구현되지 않습니다.
메서드를 호출하여 WebView 내에서 JavaScript를 호출 InvokeScriptAsync 하는 경우 경고 와 같은 보조 창이 필요한 함수는 지원되지 않습니다.
Windows Phone 8
- Windows Phone 8.1의 WebView는 WebView 컨트롤에서 부모 컨트롤(예: 기타 관련 컨트롤)으로 FlipViewScrollViewer class전파하기 위해 제스처가 필요한 부모 컨트롤과 호환되지 않습니다.
- Windows Phone 8.1의 ContainsFullScreenElement WebView에는 속성 및 ContainsFullScreenElementChanged 이벤트가 포함됩니다. 이러한 멤버는 Windows 사용할 수 없습니다.
이 UnsafeContentWarningDisplaying 이벤트는 Windows 10 이전의 Windows Phone 대해 구현되지 않습니다.
Windows 8
이러한 설명은 Windows 8.1 이상에서 실행되는 경우에도 Windows 8용으로 컴파일된 앱에만 적용됩니다.
Windows 8에서 WebView는 컨트롤과 같은 다른 UI 영역을 WebView 위에 렌더링할 수 없다는 특징을 가지고 있습니다. 이 "영공 문제"는 창 영역이 내부적으로 처리되는 방법, 특히 입력 이벤트가 처리되는 방식 및 화면 그리기 방식 때문입니다. HTML 콘텐츠를 렌더링하고 다른 UI 요소를 해당 HTML 콘텐츠 위에 배치하려면 렌더링 영역으로 사용해야 WebViewBrush 합니다. WebView는 여전히 HTML 원본 정보를 제공하며, 속성을 통해 해당 WebView를 참조합니다 SourceName . WebViewBrush 에는 이 오버레이 제한이 없습니다.
가끔 겹치는 콘텐츠(예: 드롭다운 목록 또는 앱 바)가 있는 대화형 WebView를 표시하려는 경우 필요에 따라 WebView 컨트롤을 일시적으로 숨기고 채우기를 사용하여 WebViewBrush 요소로 바꿀 수 있습니다. 그런 다음 겹치는 콘텐츠가 더 이상 없으면 원래 WebView를 다시 표시할 수 있습니다.
참고
"영공 문제"는 Windows 8.1부터 해결되었으며 Windows 8.1 또는 Windows 10을 대상으로 하는 앱에는 적용되지 않습니다.
WebView는 항상 문서 모드에서 Internet Explorer 10을 사용합니다.
버전 기록
| Windows 버전 | SDK 버전 | 추가된 값 |
|---|---|---|
| 1607 | 14393 | XYFocusDown |
| 1607 | 14393 | XYFocusLeft |
| 1607 | 14393 | XYFocusRight |
| 1607 | 14393 | XYFocusUp |
| 1803 | 17134 | SeparateProcessLost |
| 1809 | 17763 | WebResourceRequested |
생성자
| WebView() |
WebView 클래스의 새 인스턴스를 초기화합니다. |
| WebView(WebViewExecutionMode) |
지정된 실행 모드를 사용하여 클래스의 WebView 새 인스턴스를 초기화합니다. |
속성
| AccessKey |
이 요소의 액세스 키(니모닉)를 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.AccessKey(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| AccessKeyScopeOwner |
원본 요소의 시각적 트리에 없는 경우에도 이 요소에 대한 액세스 키 범위를 제공하는 원본 요소를 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.AccessKeyScopeOwner(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| ActualHeight |
렌더링된 높이를 FrameworkElement가져옵니다. 설명 부분을 참조하세요. (다음에서 상속됨 FrameworkElement) |
| ActualOffset |
레이아웃 프로세스의 정렬 패스 중에 계산된 부모에 상대적인 이 UIElement의 위치를 가져옵니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.ActualOffset(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| ActualSize |
레이아웃 프로세스의 정렬 단계에서 이 UIElement가 계산한 크기를 가져옵니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.ActualSize(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| ActualTheme |
요소에서 현재 사용되는 UI 테마를 가져옵니다. 이 테마는 요소와 RequestedTheme다를 수 있습니다. (다음에서 상속됨 FrameworkElement) |
| ActualWidth |
.의 렌더링된 너비를 가져옵니다 FrameworkElement. 설명 부분을 참조하세요. (다음에서 상속됨 FrameworkElement) |
| AllowDrop |
끌어서 놓기 작업을 위해 놓기 대상이 될 수 있는지 여부를 UIElement 결정하는 값을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.AllowDrop(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| AllowedScriptNotifyUris |
참고 AllowedScriptNotifyUris는 Windows 8.1용으로 컴파일된 앱에서 지원되지 않습니다. 대신 앱 매니페스트의 ApplicationContentUriRules 섹션을 업데이트합니다. 자세한 내용은 주의 섹션을 참조하세요. 이벤트를 WebView발생 ScriptNotify 시키는 데 허용되는 URI의 안전 목록을 가져오거나 설정합니다. |
| AllowedScriptNotifyUrisProperty |
참고 AllowedScriptNotifyUrisProperty는 Windows 8.1용으로 컴파일된 앱에서 지원되지 않습니다. 대신 앱 매니페스트의 ApplicationContentUriRules 섹션을 업데이트합니다. 자세한 내용은 주의 섹션을 참조하세요. AllowedScriptNotifyUris 종속성 속성을 나타냅니다. |
| AllowFocusOnInteraction |
사용자가 상호 작용할 때 요소가 자동으로 포커스를 받는지 여부를 나타내는 값을 가져오거나 설정합니다. (다음에서 상속됨 FrameworkElement) |
| AllowFocusWhenDisabled |
비활성화된 컨트롤이 포커스를 받을 수 있는지 여부를 가져오거나 설정합니다. (다음에서 상속됨 FrameworkElement) |
| AnyScriptNotifyUri |
참고 AnyScriptNotifyUri는 Windows 8.1용으로 컴파일된 앱에서 지원되지 않습니다. 대신 앱 매니페스트의 ApplicationContentUriRules 섹션을 업데이트합니다. 자세한 내용은 주의 섹션을 참조하세요. 모든 페이지에서 이벤트를 WebView실행할 ScriptNotify 수 있음을 나타내기 위해 속성을 설정하는 AllowedScriptNotifyUris 데 사용할 수 있는 값을 가져옵니다. |
| BaseUri |
XAML 로드 시 XAML로 생성된 개체의 기본 URI(Uniform Resource Identifier)를 나타내는 URI(Uniform Resource Identifier)를 가져옵니다. 이 속성은 런타임에 URI(Uniform Resource Identifier) 확인에 유용합니다. (다음에서 상속됨 FrameworkElement) |
| CacheMode |
가능한 경우 렌더링된 콘텐츠를 복합 비트맵으로 캐시해야 임을 나타내는 값을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.CacheMode(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| CanBeScrollAnchor |
스크롤 고정 후보가 될 수 있는지 여부를 UIElement 나타내는 값을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.CanBeScrollAnchor(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| CanDrag |
요소를 끌어서 놓기 작업에서 데이터로 끌 수 있는지 여부를 나타내는 값을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.CanDrag(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| CanGoBack |
뒤로 탐색 기록에 페이지가 하나 이상 있는지 여부를 나타내는 값을 가져옵니다. |
| CanGoBackProperty |
CanGoBack 종속성 속성을 나타냅니다. |
| CanGoForward |
앞으로 탐색 기록에 페이지가 하나 이상 있는지 여부를 나타내는 값을 가져옵니다. |
| CanGoForwardProperty |
CanGoForward 종속성 속성을 나타냅니다. |
| CenterPoint |
회전 또는 크기 조정이 발생하는 요소의 중심점을 가져오거나 설정합니다. 요소의 렌더링 위치에 영향을 줍니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.CenterPoint(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| Clip |
의 RectangleGeometry 내용 UIElement윤곽선을 정의하는 데 사용되는 값을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.Clip(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| CompositeMode |
부모 레이아웃 및 창에서 요소에 대한 대체 컴퍼지션 및 혼합 모드를 선언하는 속성을 가져오거나 설정합니다. 이는 혼합 XAML/Microsoft DirectX UI와 관련된 요소와 관련이 있습니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.CompositeMode(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| ContainsFullScreenElement |
전체 화면을 지원하는 요소가 포함되어 있는지 여부를 WebView 나타내는 값을 가져옵니다. |
| ContainsFullScreenElementProperty |
ContainsFullScreenElement 종속성 속성을 나타냅니다. |
| ContextFlyout |
이 요소와 연결된 플라이아웃을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.ContextFlyout(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| DataContext |
에 대한 데이터 컨텍스트를 FrameworkElement가져오거나 설정합니다. 데이터 컨텍스트의 일반적인 사용은 FrameworkElement 가 {Binding} 태그 확장을 사용하고 데이터 바인딩에 참여하는 경우입니다. (다음에서 상속됨 FrameworkElement) |
| DataTransferPackage |
참고 DataTransferPackage는 Windows 8.1 이후 릴리스에서 변경되거나 사용할 수 없습니다. 대신 CaptureSelectedContentToDataPackageAsync 을(를) 사용하세요. 에 전달된 클립보드 DataPackage 를 WebView가져옵니다. |
| DataTransferPackageProperty |
참고 DataTransferPackageProperty는 Windows 8.1 이후 릴리스에서 변경되거나 사용할 수 없습니다. 대신 CaptureSelectedContentToDataPackageAsync 을(를) 사용하세요. DataTransferPackage 종속성 속성을 나타냅니다. |
| DefaultBackgroundColor |
HTML 콘텐츠에서 색을 지정하지 않을 때 배경으로 사용할 WebView 색을 가져오거나 설정합니다. |
| DefaultBackgroundColorProperty |
DefaultBackgroundColor 종속성 속성을 나타냅니다. |
| DefaultExecutionMode |
현재 앱에서 인스턴스의 WebView 기본 스레딩 동작을 가져옵니다. |
| DeferredPermissionRequests |
부여되거나 거부되기를 기다리는 권한 요청의 컬렉션을 가져옵니다. |
| DesiredSize |
레이아웃 프로세스의 측정값 전달 중에 계산 UIElement 된 크기를 가져옵니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.DesiredSize(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| Dispatcher |
이 개체가 CoreDispatcher 연결된 개체를 가져옵니다. 코드 CoreDispatcher 가 비 UI 스레드에서 시작되는 경우에도 UI 스레드에 액세스할 DependencyObject 수 있는 기능을 나타냅니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.DependencyObject.Dispatcher(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 DependencyObject) |
| DocumentTitle |
에 현재 표시되는 페이지의 제목을 WebView가져옵니다. |
| DocumentTitleProperty |
DocumentTitle 종속성 속성을 나타냅니다. |
| ExecutionMode |
UI 스레드 또는 비 UI 스레드에서 콘텐츠를 호스트하는지 여부를 WebView 나타내는 값을 가져옵니다. |
| ExitDisplayModeOnAccessKeyInvoked |
액세스 키를 호출할 때 액세스 키 표시가 해제되는지 여부를 지정하는 값을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.ExitDisplayModeOnAccessKeyInvoked(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| FlowDirection |
레이아웃을 제어하는 부모 요소 내에서 텍스트 및 기타 UI 요소가 흐르는 방향을 가져오거나 설정합니다. 이 속성은 LeftToRight 또는 RightToLeft 로 설정할 수 있습니다. 모든 요소에서 FlowDirection을 RightToLeft 로 설정하면 오른쪽 맞춤, 읽기 순서를 오른쪽에서 왼쪽으로, 오른쪽에서 왼쪽으로 이동하는 컨트롤의 레이아웃이 설정됩니다. (다음에서 상속됨 FrameworkElement) |
| FocusVisualMargin |
에 대한 포커스 시각적 개체의 외부 여백을 FrameworkElement가져오거나 설정합니다. (다음에서 상속됨 FrameworkElement) |
| FocusVisualPrimaryBrush |
에 대한 시각적 개체 또는 포커스 시각적 개체의 바깥 테두리를 그리는 데 사용되는 브러시를 |
| FocusVisualPrimaryThickness |
에 대한 FrameworkElement포커스 시각적 개체 또는 외부 테두리의 두께를 |
| FocusVisualSecondaryBrush |
에 대한 FrameworkElement포커스 시각적 개체의 안쪽 테두리를 그리는 데 사용되는 브러시를 |
| FocusVisualSecondaryThickness |
에 대한 FrameworkElement포커스 시각적 개체의 안쪽 테두리 두께를 |
| Height |
의 제안된 높이를 FrameworkElement가져오거나 설정합니다. (다음에서 상속됨 FrameworkElement) |
| HighContrastAdjustment |
고대비 테마를 사용할 때 프레임워크가 요소의 시각적 속성을 자동으로 조정하는지 여부를 나타내는 값을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.HighContrastAdjustment(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| HorizontalAlignment |
패널 또는 항목 컨트롤과 같이 레이아웃 부모로 구성될 때 적용되는 FrameworkElement 가로 맞춤 특성을 가져오거나 설정합니다. (다음에서 상속됨 FrameworkElement) |
| IsAccessKeyScope |
요소가 자체 액세스 키 범위를 정의하는지 여부를 나타내는 값을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.IsAccessKeyScope(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| IsDoubleTapEnabled |
이벤트가 해당 요소에서 발생할 수 있는지 여부를 DoubleTapped 결정하는 값을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.IsDoubleTapEnabled(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| IsHitTestVisible |
포함된 UIElement 영역이 적중 횟수 테스트에 대한 true 값을 반환할 수 있는지 여부를 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.IsHitTestVisible(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| IsHoldingEnabled |
이벤트가 해당 요소에서 발생할 수 있는지 여부를 Holding 결정하는 값을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.IsHoldingEnabled(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| IsLoaded |
요소가 요소 트리에 추가되었으며 상호 작용할 준비가 되었는지 여부를 나타내는 값을 가져옵니다. (다음에서 상속됨 FrameworkElement) |
| IsRightTapEnabled |
이벤트가 해당 요소에서 발생할 수 있는지 여부를 RightTapped 결정하는 값을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.IsRightTapEnabled(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| IsTapEnabled |
이벤트가 해당 요소에서 발생할 수 있는지 여부를 Tapped 결정하는 값을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.IsTapEnabled(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| KeyboardAcceleratorPlacementMode |
컨트롤 tooltip 에 연결된 키보드 가속기 키 조합이 표시되는지 여부를 나타내는 값을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.KeyboardAcceleratorPlacementMode(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| KeyboardAcceleratorPlacementTarget |
가속기 키 조합을 표시하는 컨트롤 tooltip 을 나타내는 값을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.KeyboardAcceleratorPlacementTarget(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| KeyboardAccelerators |
키보드를 사용하여 작업을 호출하는 키 조합의 컬렉션을 가져옵니다. 가속기는 일반적으로 단추 또는 메뉴 항목에 할당됩니다.
UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.KeyboardAccelerators(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| KeyTipHorizontalOffset |
키 팁이 UIElement와 관련하여 배치되는 간격을 나타내는 값을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.KeyTipHorizontalOffset(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| KeyTipPlacementMode |
UIElement 경계와 관련하여 액세스 키 팁이 배치되는 위치를 나타내는 값을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.KeyTipPlacementMode(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| KeyTipTarget |
액세스 키 키 팁의 대상이 되는 요소를 나타내는 값을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.KeyTipTarget(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| KeyTipVerticalOffset |
키 팁이 UI 요소와 관련하여 배치되는 거리를 나타내는 값을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.KeyTipVerticalOffset(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| Language |
개체 표현 및 UI에서 현재 FrameworkElement 요소의 모든 자식 요소에 적용되는 FrameworkElement지역화/세계화 언어 정보를 가져오거나 설정합니다. (다음에서 상속됨 FrameworkElement) |
| Lights |
이 요소에 연결된 개체의 XamlLight 컬렉션을 가져옵니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.Lights(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| ManipulationMode |
동작 및 제스처와의 상호 작용에 UIElement 사용되는 값을 가져오거나 설정합니다ManipulationModes. 이 값을 설정하면 앱 코드에서 이 요소의 조작 이벤트를 처리할 수 있습니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.ManipulationMode(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| Margin |
의 외부 여백을 FrameworkElement가져오거나 설정합니다. (다음에서 상속됨 FrameworkElement) |
| MaxHeight |
의 최대 높이 제약 FrameworkElement조건을 가져오거나 설정합니다. (다음에서 상속됨 FrameworkElement) |
| MaxWidth |
의 최대 너비 제약 FrameworkElement조건을 가져오거나 설정합니다. (다음에서 상속됨 FrameworkElement) |
| MinHeight |
의 최소 높이 제약 FrameworkElement조건을 가져오거나 설정합니다. (다음에서 상속됨 FrameworkElement) |
| MinWidth |
의 최소 너비 제약 조건을 FrameworkElement가져오거나 설정합니다. (다음에서 상속됨 FrameworkElement) |
| Name |
개체의 식별 이름을 가져오거나 설정합니다. XAML 프로세서가 XAML 태그에서 개체 트리를 만들 때 런타임 코드는 이 이름으로 XAML 선언 개체를 참조할 수 있습니다. (다음에서 상속됨 FrameworkElement) |
| Opacity |
개체의 불투명도를 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.Opacity(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| OpacityTransition |
Opacity 속성에 대한 변경 내용에 애니메이션 효과를 주는 ScalarTransition을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.OpacityTransition(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| Parent |
개체 트리에서 이 FrameworkElement 개체의 부모 개체를 가져옵니다. (다음에서 상속됨 FrameworkElement) |
| PointerCaptures |
값으로 Pointer 표시된 캡처된 모든 포인터의 집합을 가져옵니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.PointerCaptures(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| Projection |
이 요소를 렌더링할 때 적용할 원근 투영(3차원 효과)을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.Projection(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| RenderSize |
의 최종 렌더링 크기를 UIElement가져옵니다. 사용하지 않는 것이 좋습니다. 주의 사항을 참조하세요. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.RenderSize(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| RenderTransform |
의 렌더링 위치에 UIElement영향을 주는 변환 정보를 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.RenderTransform(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| RenderTransformOrigin |
에 의해 RenderTransform선언된 가능한 렌더링 변환의 원점(경계를 UIElement기준으로)을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.RenderTransformOrigin(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| RequestedTheme |
리소스 결정을 위해 (및 해당 자식 요소)에서 사용하는 UIElement UI 테마를 가져오거나 설정합니다. RequestedTheme로 지정하는 UI 테마는 앱 수준을 RequestedTheme재정의할 수 있습니다. (다음에서 상속됨 FrameworkElement) |
| Resources |
로컬로 정의된 리소스 사전을 가져옵니다. XAML에서는 XAML 암시적 컬렉션 구문을 통해 리소스 항목을 속성 요소의 |
| Rotation |
시계 방향 회전 각도를 도 단위로 가져오거나 설정합니다. RotationAxis 및 CenterPoint를 기준으로 회전합니다. 요소의 렌더링 위치에 영향을 줍니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.Rotation(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| RotationAxis |
요소를 회전할 축을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.RotationAxis(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| RotationTransition |
Rotation 속성의 변경 내용에 애니메이션 효과를 주는 ScalarTransition을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.RotationTransition(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| Scale |
요소의 배율을 가져오거나 설정합니다. 요소의 CenterPoint를 기준으로 배율을 조정합니다. 요소의 렌더링 위치에 영향을 줍니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.Scale(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| ScaleTransition |
Scale 속성의 변경 내용에 애니메이션 효과를 주는 Vector3Transition을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.ScaleTransition(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| Settings |
WebViewSettings 기능을 사용하거나 사용하지 않도록 설정하는 WebView 속성이 포함된 개체를 가져옵니다. |
| Shadow |
요소에 의해 캐스팅된 그림자 효과를 가져오거나 설정합니다. (다음에서 상속됨 UIElement) |
| Source |
컨트롤에 표시 WebView 할 HTML 콘텐츠의 URI(Uniform Resource Identifier) 소스를 가져오거나 설정합니다. |
| SourceProperty |
Source 종속성 속성을 나타냅니다. |
| Style |
레이아웃 및 렌더링 중에 이 개체에 적용되는 인스턴스 Style 를 가져오거나 설정합니다. (다음에서 상속됨 FrameworkElement) |
| TabFocusNavigation |
이 컨트롤의 탭 및 작동 방식을 수정하는 TabIndex 값을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.TabFocusNavigation(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| Tag |
이 개체에 대한 사용자 지정 정보를 저장하는 데 사용할 수 있는 임의의 개체 값을 가져오거나 설정합니다. (다음에서 상속됨 FrameworkElement) |
| Transform3D |
이 요소를 렌더링할 때 적용할 3차원 변환 효과를 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.Transform3D(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| TransformMatrix |
요소에 적용할 변환 행렬을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.TransformMatrix(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| Transitions |
에 적용되는 UIElement스타일 요소의 Transition 컬렉션을 가져오거나 설정합니다. (다음에서 상속됨 UIElement) |
| Translation |
요소의 x, y 및 z 렌더링 위치를 가져오거나 설정합니다. UWP용 동등한 WinUI 2 API: Microsoft.UI.Xaml.UIElement.Translation(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| TranslationTransition |
Translation 속성의 변경 내용에 애니메이션 효과를 주는 Vector3Transition을 가져오거나 설정합니다. UWP용 동등한 WinUI 2 API: Microsoft.UI.Xaml.UIElement.TranslationTransition(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| Triggers |
에 대해 정의된 FrameworkElement애니메이션에 대한 트리거 컬렉션을 가져옵니다. 일반적으로 사용되지 않습니다. 설명 부분을 참조하세요. (다음에서 상속됨 FrameworkElement) |
| UIContext |
요소의 컨텍스트 식별자를 가져옵니다. (다음에서 상속됨 UIElement) |
| UseLayoutRounding |
개체 및 해당 시각적 하위 트리의 렌더링에서 렌더링을 전체 픽셀에 맞추는 반올림 동작을 사용해야 하는지 여부를 결정하는 값을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.UseLayoutRounding(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| VerticalAlignment |
패널 또는 항목 컨트롤과 같은 부모 개체에 작성될 때 적용되는 FrameworkElement 세로 맞춤 특성을 가져오거나 설정합니다. (다음에서 상속됨 FrameworkElement) |
| Visibility |
.의 UIElement표시 유형을 가져오거나 설정합니다. 표시되지 않는 A UIElement 는 렌더링되지 않으며 원하는 크기를 레이아웃에 전달하지 않습니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.Visibility(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| Width |
의 너비 FrameworkElement를 가져오거나 설정합니다. (다음에서 상속됨 FrameworkElement) |
| XamlRoot |
이 요소를 볼 XamlRoot를 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.XamlRoot(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| XYFocusDown |
사용자가 방향 패드(D-패드)를 누를 때 포커스가 되는 개체를 가져오거나 설정합니다. |
| XYFocusDownNavigationStrategy |
아래쪽 탐색의 대상 요소를 결정하는 데 사용되는 전략을 지정하는 값을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.XYFocusDownNavigationStrategy(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| XYFocusDownProperty |
XYFocusDown 종속성 속성을 나타냅니다. |
| XYFocusKeyboardNavigation |
키보드 방향 화살표를 사용하여 탐색을 사용하거나 사용하지 않도록 설정하는 값을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.XYFocusKeyboardNavigation(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| XYFocusLeft |
사용자가 방향 패드(D 패드)를 왼쪽으로 누를 때 포커스가 되는 개체를 가져오거나 설정합니다. |
| XYFocusLeftNavigationStrategy |
왼쪽 탐색의 대상 요소를 결정하는 데 사용되는 전략을 지정하는 값을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.XYFocusLeftNavigationStrategy(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| XYFocusLeftProperty |
XYFocusLeft 종속성 속성을 나타냅니다. |
| XYFocusRight |
사용자가 방향 패드(D 패드) 오른쪽을 누를 때 포커스가 되는 개체를 가져오거나 설정합니다. |
| XYFocusRightNavigationStrategy |
오른쪽 탐색의 대상 요소를 결정하는 데 사용되는 전략을 지정하는 값을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.XYFocusRightNavigationStrategy(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| XYFocusRightProperty |
XYFocusRight 종속성 속성을 나타냅니다. |
| XYFocusUp |
사용자가 방향 패드(D-pad)를 누를 때 포커스를 가져오는 개체를 가져오거나 설정합니다. |
| XYFocusUpNavigationStrategy |
위쪽 탐색의 대상 요소를 결정하는 데 사용되는 전략을 지정하는 값을 가져오거나 설정합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.XYFocusUpNavigationStrategy(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| XYFocusUpProperty |
XYFocusUp 종속성 속성을 나타냅니다. |
메서드
이벤트
| AccessKeyDisplayDismissed |
액세스 키를 더 이상 표시하지 않아야 할 때 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.AccessKeyDisplayDismissed(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| AccessKeyDisplayRequested |
사용자가 액세스 키를 표시할 것을 요청할 때 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.AccessKeyDisplayRequested(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| AccessKeyInvoked |
사용자가 액세스 키 시퀀스를 완료할 때 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.AccessKeyInvoked(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| ActualThemeChanged |
ActualTheme 속성 값이 변경될 때 발생합니다. (다음에서 상속됨 FrameworkElement) |
| BringIntoViewRequested |
이 요소 또는 해당 하위 항목 중 하나에서 호출될 때 StartBringIntoView 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.BringIntoViewRequested(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| CharacterReceived |
입력 큐에서 구성된 단일 문자를 받을 때 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.CharacterReceived(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| ContainsFullScreenElementChanged |
현재 전체 화면 요소가 포함되어 있는지 여부 WebView 의 상태가 변경되면 발생합니다. |
| ContentLoading |
새 콘텐츠를 로드하기 시작했을 때 WebView 발생합니다. |
| ContextCanceled |
컨텍스트 입력 제스처가 조작 제스처로 계속 진행되어 요소에 컨텍스트 플라이아웃이 열리지 않도록 알리는 경우에 발생합니다. UWP용 동등한 WinUI 2 API: Microsoft.UI.Xaml.UIElement.ContextCanceled(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| ContextRequested |
사용자가 마우스 오른쪽 단추 클릭과 같은 컨텍스트 입력 제스처를 완료할 때 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.ContextRequested(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| DataContextChanged |
FrameworkElement.DataContext 속성 값이 변경되면 발생합니다. (다음에서 상속됨 FrameworkElement) |
| DOMContentLoaded |
현재 HTML 콘텐츠 구 WebView 문 분석이 완료되면 발생합니다. |
| DoubleTapped |
이 요소의 적중 테스트 영역에서 처리되지 않은 DoubleTap 상호 작용이 발생할 때 발생합니다. UWP용 동등한 WinUI 2 API: Microsoft.UI.Xaml.UIElement.DoubleTapped(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| DragEnter |
입력 시스템이 이 요소를 대상으로 사용하여 기본 끌기 이벤트를 보고할 때 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.DragEnter(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| DragLeave |
입력 시스템에서 이 요소를 원본으로 사용하여 기본 끌기 이벤트를 보고할 때 발생합니다. UWP용 동등한 WinUI 2 API: Microsoft.UI.Xaml.UIElement.DragLeave(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| DragOver |
입력 시스템에서 이 요소를 잠재적인 놓기 대상으로 사용하는 기본 끌기 이벤트를 보고하면 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.DragOver(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| DragStarting |
끌기 작업이 시작될 때 발생합니다. UWP용 동등한 WinUI 2 API: Microsoft.UI.Xaml.UIElement.DragStarting(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| Drop |
입력 시스템에서 이 요소를 놓기 대상으로 사용하는 기본 놓기 이벤트를 보고하면 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.Drop(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| DropCompleted |
소스가 종료되면 이 요소에 대한 끌어서 놓기 작업이 발생할 때 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.DropCompleted(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| EffectiveViewportChanged |
'의 유효 뷰포트 가 변경되면 FrameworkElement발생합니다. (다음에서 상속됨 FrameworkElement) |
| FrameContentLoading |
프레임이 WebView 새 콘텐츠를 로드하기 시작했을 때 발생합니다. |
| FrameDOMContentLoaded |
프레임의 WebView 현재 HTML 콘텐츠 구문 분석이 완료되면 발생합니다. |
| FrameNavigationCompleted |
프레임의 콘텐츠 로드가 WebView 완료되면 발생합니다. |
| FrameNavigationStarting |
프레임이 WebView 새 콘텐츠로 이동하기 전에 발생합니다. |
| GettingFocus |
포커스를 UIElement 받기 전에 발생합니다. 이 이벤트는 이벤트가 버블링되는 동안 포커스가 이동되지 않도록 동기적으로 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.GettingFocus(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| GotFocus |
포커스를 UIElement 받을 때 발생합니다. 이 이벤트는 비동기적으로 발생하므로 버블링이 완료되기 전에 포커스가 다시 이동할 수 있습니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.GotFocus(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| Holding |
이 요소의 적중 테스트 영역에서 처리되지 않은 보류 상호 작용이 발생할 때 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.Holding(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| KeyDown |
포커스가 있는 동안 UIElement 키보드 키를 누를 때 발생합니다. UWP용 동등한 WinUI 2 API: Microsoft.UI.Xaml.UIElement.KeyDown(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| KeyUp |
포커스가 있는 동안 UIElement 키보드 키가 해제될 때 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.KeyUp(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| LayoutUpdated |
레이아웃 관련 속성 변경 값 또는 레이아웃을 새로 고치는 다른 작업으로 인해 시각적 트리의 레이아웃이 변경되면 발생합니다. (다음에서 상속됨 FrameworkElement) |
| LoadCompleted |
참고 LoadCompleted는 Windows 8.1 이후 릴리스에서 변경되거나 사용할 수 없습니다. 대신 NavigationCompleted 을(를) 사용하세요. 최상위 탐색이 완료되고 콘텐츠가 컨트롤에 WebView 로드되거나 로드하는 동안 오류가 발생할 때 발생합니다. |
| Loaded |
개체 트리가 FrameworkElement 생성되어 개체 트리에 추가되고 상호 작용할 준비가 되었을 때 발생합니다. (다음에서 상속됨 FrameworkElement) |
| Loading |
로드를 FrameworkElement 시작할 때 발생합니다. (다음에서 상속됨 FrameworkElement) |
| LongRunningScriptDetected |
JavaScript를 WebView 실행하는 동안 주기적으로 발생하므로 스크립트를 중지할 수 있습니다. |
| LosingFocus |
포커스를 잃기 UIElement 전에 발생합니다. 이 이벤트는 이벤트가 버블링되는 동안 포커스가 이동되지 않도록 동기적으로 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.LosingFocus(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| LostFocus |
포커스가 손실될 UIElement 때 발생합니다. 이 이벤트는 비동기적으로 발생하므로 버블링이 완료되기 전에 포커스가 다시 이동할 수 있습니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.LostFocus(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| ManipulationCompleted |
조작 UIElement 이 완료되면 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.ManipulationCompleted(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| ManipulationDelta |
입력 디바이스에서 조작 중에 위치를 변경하면 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.ManipulationDelta(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| ManipulationInertiaStarting |
입력 디바이스에서 조작 중에 UIElement 개체와의 연결이 끊어져 활동이 없게 될 때 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.ManipulationInertiaStarting(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| ManipulationStarted |
입력 디바이스에서 조작 UIElement을 시작할 때 발생합니다. UWP용 동등한 WinUI 2 API: Microsoft.UI.Xaml.UIElement.ManipulationStarted(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| ManipulationStarting |
조작 프로세서가 처음으로 만들어지면 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.ManipulationStarting(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| NavigationCompleted |
현재 콘텐츠 로드가 WebView 완료되었거나 탐색에 실패한 경우에 발생합니다. |
| NavigationFailed |
참고 NavigationFailed는 Windows 8.1 이후 릴리스에서 변경되거나 사용할 수 없습니다. 대신 NavigationCompleted 을(를) 사용하세요. 탐색 시도를 완료할 수 없을 때 WebView 발생합니다. |
| NavigationStarting |
새 콘텐츠로 WebView 이동하기 전에 발생합니다. |
| NewWindowRequested |
사용자가 새 창에서 WebView 콘텐츠를 열게 하는 작업을 수행할 때 발생합니다. |
| NoFocusCandidateFound |
사용자가 탭 또는 방향 화살표를 통해 포커스를 이동하려고 하지만 포커스 후보가 이동 방향에서 찾을 수 없으므로 포커스가 움직이지 않을 때 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.NoFocusCandidateFound(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| PermissionRequested |
작업의 사용 WebView 권한을 부여해야 할 때 발생합니다. |
| PointerCanceled |
연락처를 만든 포인터가 비정상적으로 연락처를 잃을 때 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.PointerCanceled(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| PointerCaptureLost |
이전에 이 요소에 의해 유지된 포인터 캡처가 다른 요소 또는 다른 곳으로 이동할 때 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.PointerCaptureLost(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| PointerEntered |
포인터가 이 요소의 적중 테스트 영역에 들어갈 때 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.PointerEntered(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| PointerExited |
포인터가 이 요소의 적중 테스트 영역을 떠날 때 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.PointerExited(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| PointerMoved |
포인터가 이 요소의 적중 테스트 영역 내에 남아 있는 동안 포인터가 움직일 때 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.PointerMoved(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| PointerPressed |
포인터 디바이스가 이 요소 내에서 Press 작업을 시작할 때 발생합니다. UWP용 동등한 WinUI 2 API: Microsoft.UI.Xaml.UIElement.PointerPressed(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| PointerReleased |
이 요소 내에서 이전에 Press 동작을 시작한 포인터 디바이스가 해제될 때 발생합니다. Press 동작의 끝은 PointerReleased 이벤트를 발생시키지 않습니다. 대신 다른 이벤트가 발생할 수 있습니다. 자세한 내용은 비고 섹션을 참조하세요. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.PointerReleased(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| PointerWheelChanged |
포인터 휠의 델타 값이 변경되면 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.PointerWheelChanged(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| PreviewKeyDown |
포커스가 있는 동안 UIElement 키보드 키를 누를 때 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.PreviewKeyDown(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| PreviewKeyUp |
포커스가 있는 동안 키보드 키를 놓을 UIElement 때 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.PreviewKeyUp(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| ProcessKeyboardAccelerators |
눌렀을 keyboard shortcut (or accelerator) 때 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.ProcessKeyboardAccelerators(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| RightTapped |
포인터가 요소 위에 있는 동안 오른쪽 탭 입력 자극이 발생할 때 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.RightTapped(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| ScriptNotify |
컨트롤에 포함된 WebView 콘텐츠가 JavaScript를 사용하여 문자열을 애플리케이션에 전달하는 경우에 발생합니다. |
| SeparateProcessLost |
WebView가 SeparateProcess 를 사용하여 ExecutionMode 실행되고 별도의 프로세스가 손실되면 발생합니다. |
| SizeChanged |
속성 중 하나 또는 속성에서 ActualHeight ActualWidth 값을 FrameworkElement변경할 때 발생합니다. (다음에서 상속됨 FrameworkElement) |
| Tapped |
이 요소의 적중 테스트 영역에서 처리되지 않은 탭 상호 작용이 발생할 때 발생합니다. UWP에 해당하는 WinUI 2 API: Microsoft.UI.Xaml.UIElement.Tapped(Windows 앱 SDK WinUI의 경우 Windows 앱 SDK 네임스페이스 참조). (다음에서 상속됨 UIElement) |
| Unloaded |
이 개체가 더 이상 주 개체 트리에 연결되지 않은 경우에 발생합니다. (다음에서 상속됨 FrameworkElement) |
| UnsafeContentWarningDisplaying |
SmartScreen 필터에서 WebView 안전하지 않은 것으로 보고된 콘텐츠에 대한 경고 페이지를 표시할 때 발생합니다. |
| UnsupportedUriSchemeIdentified |
지원하지 않는 체계 WebView 를 사용하여 URI(Uniform Resource Identifier)로 이동하려고 할 때 발생합니다. |
| UnviewableContentIdentified |
지원되지 않는 파일을 다운로드하려고 할 때 WebView 발생합니다. |
| WebResourceRequested |
HTTP 요청이 수행되었을 때 발생합니다. |
적용 대상
추가 정보
피드백
다음에 대한 사용자 의견 제출 및 보기
