从属性路径获取 XAML 中的属性字符串名称



有没有办法在 XAML 中获取属性名称?

我发现 XAML 中不支持名称。

像这样的东西:

<i:InvokeCommandAction 
Command="{Binding
    Source={StaticResource SomeViewModel},
    Path=SomeICommandImplementation}" 
CommandParameter={Binding 
    Source={StaticResource SomeViewModel},
    Path=SomeProperty, 
    GetNameOf=True}" />

有没有办法在 XAML 中获取属性的字符串名称。

不,没有。XAML 是一种标记语言,它没有定义nameof运算符。

您可以做的是尝试实现自己的自定义InvokeCommandAction

创建一个派生自 System.Windows.Interactivity.TriggerAction<DependencyObject> 的类,向其添加 InvokeCommandAction 的属性(它是sealed的,因此您无法从中派生(和另一个 GetNameOf 属性,然后重写 Invoke 方法以使用 nameof 运算符。

最新更新