0
간단한 HTML 편집기를 만들어야합니다. 데스크톱 응용 프로그램을 사용하여 DOM에 액세스하여 DesignMode = true로 설정할 수 있습니다. WinRt 응용 프로그램에서 WebView를 위해 어떻게합니까?WebView를 winrt에서 편집 가능하게 만드는 방법은 무엇입니까?
간단한 HTML 편집기를 만들어야합니다. 데스크톱 응용 프로그램을 사용하여 DOM에 액세스하여 DesignMode = true로 설정할 수 있습니다. WinRt 응용 프로그램에서 WebView를 위해 어떻게합니까?WebView를 winrt에서 편집 가능하게 만드는 방법은 무엇입니까?
그래서 WinRT 응용 프로그램에서 WebView 용 DesignMode를 설정하는 방법을 찾은 것 같습니다. document.designMode 속성을 변경할 수있는 자바 스크립트 방법
난 그냥 필요한 호출 내 경우
"에"나는 DependencyProperty에 추가 웹보기에 대한 확장을 구현합니다. 나 자바 스크립트 메소드를 호출하는 필수 요구 사항
<WebView x:Name="webViewBody" Source="about:blank" controls:WebViewEx.DesignMode="true"/>
XAML
에서 designMode를 해제 \ 켤 수 있습니다public static class WebViewEx
{
public static readonly DependencyProperty DesignModeProperty = DependencyProperty.RegisterAttached(
"DesignMode", typeof(bool),
typeof(WebViewEx),
new PropertyMetadata(null, OnDesignModePropertyChanged));
private async static void OnDesignModePropertyChanged(DependencyObject dependencyObject, DependencyPropertyChangedEventArgs e)
{
if (DesignMode.DesignModeEnabled)
return;
WebView view = dependencyObject as WebView;
if (view == null)
return;
if (e.NewValue == e.OldValue)
return;
await view.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, async() =>
{
if ((bool)e.NewValue)
{
await view.InvokeScriptAsync("eval", new string[] { "document.designMode = \"on\";" });
}
else
{
await view.InvokeScriptAsync("eval", new string[] { "document.designMode = \"off\";" });
}
});
}
public static void SetDesignMode(DependencyObject element, bool value)
{
element.SetValue(DesignModeProperty, value);
}
public static bool GetDesignMode(DependencyObject element)
{
return (bool)element.GetValue(DesignModeProperty);
}
}
는 웹보기를 초기화해야한다. 제 경우에는 소스 속성을 "about : blank"로 설정했습니다.