【问题标题】:Invalid Markup after adding ChromiumWebBrowser添加 ChromiumWebBrowser 后标记无效
【发布时间】:2018-02-08 02:18:01
【问题描述】:
我在我的程序中使用ChromiumWebBrowser。我按照Github 中的步骤将其设置为任何 CPU。然后我遇到了一个问题:我无法加载 UI XMAL Designer 但我可以在关闭 MainWindow.xaml 后运行代码。当我打开 UI Designer 时,它会显示:
错误是:
名称“ChromiumWebBrowser”不存在于
namespace'clr-namespace:CefSharp.Wpf;assembly=CefSharp.Wpf'.
但我已经输入了xmlns:cefSharp="clr-namespace:CefSharp.Wpf;assembly=CefSharp.Wpf"。
我还检查了here 的问题,但它没有帮助。
我正在寻找一些建议。提前致谢!
【问题讨论】:
标签:
c#
wpf
xaml
user-interface
chromium-embedded
【解决方案1】:
一种选择是跳过“任何 CPU”路线,而是将 WPF 应用程序编译为 x86。通过这种方式,您可以让设计师更轻松地工作。
但是正如您所提到的,即使设计器显示错误,您的应用程序也可以在“任何 CPU”中运行,因此如果您可以在没有 WPF 设计器的情况下使用并且只需手动编辑 XAML,那么一切应该可以正常工作。
以下是使 Visual Studio 的 WPF 设计器在 x86 WPF 应用程序中与 ChromiumWebBrowser 一起使用的步骤:
- 创建新的 WPF 项目
- 安装 Nuget 包 CefSharp.Wpf 57.00
- 如果您现在尝试编译解决方案,您会看到错误:如果您指定平台 (x86 / x64),CefSharp.Common 将立即可用。
- 选择构建 - 配置管理器
- 点击“活动解决方案平台”——新建
- 创建 x86 配置并确保它处于活动状态
- 构建
- (重新启动 Visual Studio)
- 打开 MainPage.xaml 并添加 Chromium:
- 设计器和应用程序应该可以正常工作