我花了一些时间来发现这个问题,但是像设计师这样的特定于属性TemplatePart
现在正在导致我的UWP应用程序的发行版本出现问题。
将此属性应用于控件将使用反射。
[TemplatePart(Name = PART_Panel, Type = typeof(Panel))]
public class MyAwesomeControl : Control
{
...
}
构建输出给了我这个:
警告:“ Windows.UI.Xaml.Controls.Panel”类型未包含在编译中,但在“ MyAwesomeControl”类型中被引用。可能缺少一个程序集。
如果您希望构建正常工作,则必须排除该属性。但是,这违背了控制库的目的。我的图书馆的用户不会知道MyAwesomeControl模板中Panel
的名称PART_Panel
必须为。
有针对这个的解决方法吗?我是否必须仅允许设计时属性通过就启用该类型的反射?
我知道rd.xml
可以嵌入到项目中的文件。但是,如果<Type Name="Windows.UI.Xaml.Controls.Panel" ... />
包含a,这是否表示我要告诉编译器将该面板排除在.Net本机优化之外?
这是您正在运行的.Net本机工具(ilc.exe)版本中的不幸错误。从Visual Studio的Update 1版本开始,此属性已得到正确支持。您可以在这里获取RC:https : //www.visualstudio.com/zh-cn/news/vs2015-update1-vs.aspx
如果您使用较旧的工具,可以放心地忽略该警告。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句