'conv:'和'local:'有什么不同?

有时我看到这种格式:

<UserControl.Resources>
    <local:NotConverter x:Key="notConverter" />
</UserControl.Resources>

有时以下内容:

<TextBlock.Resources>
    <conv:IsNullConverter x:Key="isNullConverter"/>
</TextBlock.Resources>

在这两个例子中,“local:”和“conv:”之间有什么不同?

我还可以使用哪些其他选项? (我记得我也看过“风格:”)

谢谢 .

回答(1)

2 years ago

“Local”和“Conv”只是XAML中引用的名称空间的友好名称 .

您应该在课程开头有这些关键字的定义,如下所示:

<View x:Class="MyProject.Views.MyView"
         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="http://schemas.microsoft.com/expression/blend/2008"
         xmlns:conv="clr-namespace:Namespace.Converters"
         xmlns:sys="clr-namespace:System;assembly=mscorlib"
         x:Name="MyClass"
         mc:Ignorable="d"
         d:DesignHeight="450" d:DesignWidth="800">

因此,您可以使用关键字“conv”来访问名称空间“Namespace.Converters”中的转换器 .

当然,您可以将名称“conv”更改为您认为合适的名称 .