栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

XAML是否具有调试模式的条件编译器指令?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

XAML是否具有调试模式的条件编译器指令?

我最近不得不这样做,当我无法轻松找到任何清晰的示例时,它是如此的简单,这让我感到惊讶。我所做的是将以下内容添加到AssemblyInfo.cs中:

#if DEBUG[assembly: XmlnsDefinition( "debug-mode", "Namespace" )]#endif

然后,使用标记兼容兼容性名称空间的AlternateContent标记根据该名称空间定义的存在来选择内容:

<Window x:Class="Namespace.Class"        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"        xmlns:d="debug-mode"        Width="400" Height="400">        ...        <mc:AlternateContent> <mc:Choice Requires="d">     <Style TargetType="{x:Type ToolTip}">         <Setter Property="FontFamily" Value="Arial"/>         <Setter Property="FlowDirection" Value="LeftToRight"/>     </Style> </mc:Choice> <mc:Fallback>     <Style TargetType="{x:Type ToolTip}">         <Setter Property="FontFamily" Value="Tahoma"/>         <Setter Property="FlowDirection" Value="RightToLeft"/>     </Style> </mc:Fallback>        </mc:AlternateContent>        ...</Window>

现在,当定义DEBUG时,还将定义“调试模式”,并且将出现“
d”命名空间。这使AlternateContent标记选择了第一段代码。如果未定义DEBUG,则将使用Fallback代码块。

此示例代码未经测试,但与我在当前项目中有条件地显示一些调试按钮所用的基本上相同。

我确实看到了一篇博客文章,其中包含一些示例代码,这些代码依赖于“ Ignorable”标签,但这种方法看起来不太清晰且易于使用。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/576284.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号