我试图在我的 Xaml 中绑定几个不同的属性:
<Label Content="{Binding Description}"
Visibility="{Binding Path=DescriptionVisibility,
ElementName=_UserInputOutput}"
FontSize="{Binding Path=FontSizeValue, ElementName=_UserInputOutput}"
HorizontalAlignment="Left" VerticalAlignment="Top" Padding="0" />
你会注意到我在这里使用了两种不同的绑定技术。使用元素名称的工作,另一个不工作。这是后面的代码:
public string Description
{
get { return (string)GetValue(DescriptionProperty); }
set { SetValue(DescriptionProperty, value); }
}
public static readonly DependencyProperty DescriptionProperty =
DependencyProperty.Register("Description", typeof(string), typeof(UserControl),
new UIPropertyMetadata(""));
每个绑定都有不同的名称,但它们大部分看起来都像这样。我希望我的 Binding 能够使用:
{Binding Description}
代替:
{Binding Path=Description, ElementName=_UserInputOutput}
它似乎只在使用 ElementName 时才有效。我需要导出/导入这个 XAML,所以我不能有 ElementName,否则导入将不起作用。
我认为这是最好的:
{Binding Path=Description, RelativeSource={RelativeSource Self}}
这没有用。
有任何想法吗??谢谢!