Xaml- 在绑定路径中转义“@”

Xaml- Escape '@' in binding path

我的绑定是这样的:

<... SelectedItem={Binding ElementName=NAME, Path=MyProperty.@enum} />

@enum 是内部 属性 并且 @ 是其名称的一部分。

我得到的错误是

Unexpected token

如何转义@?

@ 字符用于转义标识符名称,否则会被识别为 C# 关键字。由于 enum 是 C# 中的关键字,因此您必须对其进行转义,但这仅适用于 C#。 属性 名称仍然是 enum

所以正确的 属性 路径也是 MyProperty.enum:

SelectedItem="{Binding ElementName=NAME, Path=MyProperty.enum}"