XAML条件编译有没有一种简单的方法可以在我的xaml文件中使用我用于c#代码的相同条件编译符号?XAML中有一些条件编译支持。但它与C#代码不同。诀窍是用AlternateContent和Requires标记Ignorable。通过这样做,您实际上可以有条件地使部分xaml不可用,并打开或关闭它。我尝试了其他提到的解决方案,它编译并运行,即使VisualStudio抛出大量错误,对我来说该解决方案似乎在UI线程上花费了大量时间,我不喜欢两者。我实施的最佳解决方案是将所有条件逻辑放在控件后面的代码中。既然你没有提到你的意图,这可能就是你要找的。我希望在我的应用程序中有一个影响颜色的条件编译符号,但您也可以想象其他不同样式甚至模板的相同解决方案,或者这可以与通常的if-else逻辑一起使用而不是编译符号.#068C00#5EBD50DarkGreen#EF0000#e62621#EF0000您可以通过将MainStyle.xaml.cs放在您的应用程序中并像这样使用它来手动创建代码隐藏:namespaceMyApp.Style{partialclassMainStyle:ResourceDictionary{publicMainStyle(){InitializeComponent();#ifVERSION2this["MainColor"]=this["OtherRedColor"];这个[“LighterMainColor”]=这个[“LighterRedColor”];this["DarkerMainColor"]=this["DarkerRedColor"];#elifVERSION1这个["MainColor"]=这个["AbMainColor"];这个["LighterMainColor"]=这个["AbLighterMainColor"];这个[“DarkerMainColor”]=这个[“AbDarkerMainColor”];#endif}}}请注意,如果仅在我的XAML代码中引用未设置的值,这也适用于StaticResource,尽管构造函数仅被调用一次。我想重写/使用更多的资源字典方法也可以,但这已经解决了我的问题,所以我没有尝试。以上就是《C#学习教程:XAML条件编译分享》的全部内容。如果对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
