我有一个文本框,其中已经显示了一个字符串.将光标移到我正在做的文本框中
txtbox.Focus();
Run Code Online (Sandbox Code Playgroud)
但是如何将光标放在文本框中字符串的末尾?
今天,我决定将一个 VB.net 应用程序中的WebView控件迁移到另一个控件WebView2。
我已经安装WebView2并NuGet更改了声明和初始化行(我的 VB 程序中只有 4 行,因为我使用 2 个 WebView2)。
当我构建我的应用程序时,Visual Studio 2019表明该ScriptNotify事件不是WebView2!
Private Sub wvSelect_ScriptNotify(
sender As Object,
e As WebViewControlScriptNotifyEventArgs) Handles wvSelect.ScriptNotify
Run Code Online (Sandbox Code Playgroud)
使用旧WebView控件,该事件是使用windows.external.notifyJavascript 函数生成的。
function clickPlus(e) { window.external.notify("+PLUS:"); }
Run Code Online (Sandbox Code Playgroud)
哪个事件正在取代控制ScriptNotify中的事件WebView2?
我有兴趣了解新事件以及如何从 Javascript 调用该事件。
我已经下载并附加了 WebView2 的 FixVersionRuntime.88.0.705.81.x64 并将其附加到我的项目中。
使用以下内容应该加载必要的页面,但加载 WebView 时不会崩溃,但不会加载任何页面:
public async Task InitializeAsync()
{
string installPath = @"C:\Program Files (x86)\WebView2Runtime\Microsoft.WebView2.FixedVersionRuntime.88.0.705.81.x64\";
var webView2Environment = await CoreWebView2Environment.CreateAsync(installPath);
await browserControl.EnsureCoreWebView2Async(webView2Environment);
}
Run Code Online (Sandbox Code Playgroud)
然后我在此之后设置源:
await InitializeAsync();
me.Source = new Uri(((MainViewModel)this.DataContext).Config.DefaultURL);
Run Code Online (Sandbox Code Playgroud)
使用常绿安装程序时,它工作正常,但当移动到固定版本时,部署时似乎无法正确加载。
我想导航到 URL,而不是打开一个单独的实例。
无论我做什么,它仍然会打开 WebView2 的另一个实例。
private void CoreWebView2_NewWindowRequested(object sender,
CoreWebView2NewWindowRequestedEventArgs e)
{
//e.NewWindow = webView21.CoreWebView2;
e.NewWindow = (CoreWebView2)sender;
//e.Handled = true;
}
Run Code Online (Sandbox Code Playgroud)
这是原始帖子,我需要做什么才能处理新窗口请求?