我在用户控件库中构建了一个用户控件,我想将它包含在我的windows通用应用程序中。我记得在过去你必须向app.xaml添加一些内容(类似于pack://这是我的xaml)。
所以我的想法(或希望)我只是包括我的库和用户控件。我什么时候得到 - 解析器内部错误:对象编写器'xClassNotDerivedFromElement'。
我尝试在App.Xaml中将其添加为msappx引用,但我的语法可能有误。如果我可以通过将代码本身复制到我的项目中来实现这一点(我不想这样做)。建议? 感谢
编辑:添加了源代码
public MainPage()
{
_webControl = new NativeWebView.WebUserControl();
_webControl.Loaded += _webControl_Loaded;
_contentView = new NativeWebView.ContentView(_webControl);
this.InitializeComponent();
root.Children.Add(_webControl);
}
public sealed partial class WebUserControl : UserControl, IWebView
{
public WebUserControl()
{
this.InitializeComponent();
}
}
答案 0 :(得分:1)
所以,我找到了答案。因此,要将库包含到另一个项目中,您必须拥有一些额外的疯狂文件(.xr.xml和.xrc)。我手动将它们复制到一个文件夹中,但似乎它们已经过时了。我发现如果我想从构建目录中包含库,我必须在构建属性页面中选中一个框(生成库布局)。这会为我复制文件。解!
答案 1 :(得分:0)
只需将库的名称空间添加到您使用该控件的页面的根标记中,例如。对于WinRT XAML工具包中的ImageButton控件:
<Page
[...]
xmlns:toolkit="using:WinRTXamlToolkit.Controls">
[...]
<toolkit:ImageButton [...] />
[...]
如果仍然获得xClassNotDerivedFromElement,则表示库中存在问题。 (需要来源跟踪它)