В WPF я использую CefSharp для WinForm, который запускается в WindowsFormsHost в окне. Все работает как шарм, когда я отображаю окно с помощью Show (). Но если я использую ShowDialog (), CefSharp, кажется, не загружается. WindowsFormsHost просто отображает его цвет фона.
<WindowsFormsHost Name="xamlBrowser" Grid.Row="0" Background="#f5f2e9" />
public WindowEditor() {
InitializeComponent();
if (File.Exists(Path.Combine(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "app"), "editor.html"))) {
ChromiumWebBrowser browser = new ChromiumWebBrowser("localfolder://cefsharp/editor.html", MainWindow.rc1); // with RequestContext for the custom scheme
xamlBrowser.Child = browser;
browser.JavascriptObjectRepository.Register(
"boundAsync",
new BoundEditorObject() { Reference = this },
true
);
browser.IsBrowserInitializedChanged += OnIsBrowserInitializedChanged;
browser.FrameLoadEnd += OnFrameLoadEnd;
}
}
new WindowEditor() { Text = "Init text" }.ShowDialog()
Мне нужно вернуть значение после закрытия окна. Знаете ли вы, почему это не работает с помощью ShowDialog () ??
Большое спасибо