我通过NuGet在我的应用程序中安装了CefSharp,然后在我的app.xaml.cs OnStartup()
方法中初始化它。当我的应用程序运行时,我什么都没显示,没有错误。将视图切换为不使用CefSharp的另一个视图正常显示。我似乎无法使用CefSharp渲染网页。
查看[QuestHTMLView]
<Grid>
<Grid.RowDefinitions>
<RowDefinition />
</Grid.RowDefinitions>
<cefSharp:ChromiumWebBrowser Grid.Row="0" Address="https://github.com/cefsharp/CefSharp/wiki/Frequently-asked-questions" />
</Grid>
ViewModel [QuestHTMLViewModel]
public class QuestHTMLViewModel : Screen
{
}
ShellView(呈现上一个视图的位置)
<xctk:BusyIndicator VerticalAlignment="Top" Grid.Row="1" Grid.Column="0" Grid.RowSpan="2" IsBusy="{Binding IsBusy}">
<ContentControl x:Name="ActiveItem" />
</xctk:BusyIndicator>
ShellViewModel(其中CefSharp视图设置为ActiveItem)[仅限构造函数]
public ShellViewModel()
{
QuestHTML = new QuestHTMLViewModel();
ActiveItem = QuestHTML;
}
初始化
protected override void OnStartup(StartupEventArgs e)
{
Cef.Initialize(new CefSettings());
base.OnStartup(e);
}
答案 0 :(得分:0)
您应该初始化并在Window
方法中显示OnStartUp()
:
protected override void OnStartup(StartupEventArgs e)
{
MainWindow = new MainWindow();
MainWindow.ShowDialog();
base.OnStartup(e);
}
并且不要忘记从StartupUri
删除App.xaml
属性。 App.xaml
应如下所示:
<Application x:Class="TestPlace.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Application.Resources>
</Application.Resources>
</Application>