2016-10-04 5 views
0

Я пытаюсь получить webview управление в редактируемый режим (для UWP). Вот мой код, где я впрыскивать JS, чтобы сделать это:Невозможно сделать Webview редактируемым

private const string EditableParameter = "~editable~"; 
private const string SetBodyEditableScript = @" 
     try 
     { 
      document.body.contentEditable = '" + EditableParameter + @"'; 
     } 
     catch(e) 
     { 

     }"; 

public MainPage() 
{ 
    this.InitializeComponent(); 
    MakeWebviewEditable(); 
} 

private const string EventNotificationFormat = @"window.external.notify('{0}');"; 
private async void MakeWebviewEditable() 
{ 
    await InjectJavaScriptAsync(SetBodyEditableScript.Replace(EditableParameter, "true")); 
} 

private async Task InjectJavaScriptAsync(string jscript) 
     { 
      await WebView.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, async() => 
      { 
       try 
       {       
         string result = await WebView.InvokeScriptAsync("eval", new string[] { jscript }); 
       } 
       catch (Exception ex) 
       { 

       } 
      }); 
     } 

Но он не работает и контроль webview еще не editable.

ответ

0

Это оказалось довольно простым. Просто нужно было установить для режима разработки значение true:

document.designMode='on'; 
Смежные вопросы