小编log*_*ic8的帖子

如何强制TabItem在加载时初始化内容?

[免责声明:我是Visual Basic的新手.]

在WPF中,我有一个包含2个TabItems的TabControl:

第一个TabItem包含一堆URL.

第二个TabItem包含一个DockPanel,其中包含一个cefSharp webView(嵌入了.net的chrome)

当我点击tab1中的url时,它会在tab2中包含的浏览器中加载一个页面... 但是,只有在我通过单击tab2初始化浏览器时它才有效.

在进行一些搜索之后,看起来vb.net不会初始化TabItem中的内容,直到它变得可见.(对?)

所以,我的问题是,如何在后台强制一个未选中的选项卡在加载时初始化其内容?(即.所以我不必先点击选项卡或先切换到它)

编辑:

根据要求,这是相关代码:

相关的XAML由一个名为"mainBox"的DockPanel组成

<DockPanel Name="mainBox" Width="Auto" Height="Auto" Background="#afe0ff" />
Run Code Online (Sandbox Code Playgroud)

这是我的"代码隐藏"vb脚本:

Class MainWindow : Implements ILifeSpanHandler, IRequestHandler

    Shared web_view1 As CefSharp.Wpf.WebView
    Shared web_view2 As CefSharp.Wpf.WebView

    Public Sub init(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Loaded

    'This is in a DockPanel created on the xaml named mainBox

        ' set up tabControl:
        Dim browserTabs As New TabControl()
        browserTabs.BorderThickness = Nothing

        Dim tab1 As New TabItem()
        tab1.Header = "My Tab"

        Dim tab2 …
Run Code Online (Sandbox Code Playgroud)

vb.net wpf tabcontrol cefsharp

5
推荐指数
1
解决办法
6206
查看次数

javascript正则表达式 - 只生成(.)+组中的最后一个字母?

我试图通过正则表达式拆分字符串并获得意外结果:

var str = 'name == abcd';
var pattern = /([^!=>< ]+)\s*([!=><]+)\s*(.)+/i;

pattern.exec(str);
Run Code Online (Sandbox Code Playgroud)

示例的结果是: [ "name == abcd", "name", "==", **"d"** ]

为什么"d""abcd"呢?

javascript regex

1
推荐指数
1
解决办法
945
查看次数

标签 统计

cefsharp ×1

javascript ×1

regex ×1

tabcontrol ×1

vb.net ×1

wpf ×1