Я пытаюсь связать несколько разных свойств в моем Xaml:
<Label Content="{Binding Description}"
Visibility="{Binding Path=DescriptionVisibility,
ElementName=_UserInputOutput}"
FontSize="{Binding Path=FontSizeValue, ElementName=_UserInputOutput}"
HorizontalAlignment="Left" VerticalAlignment="Top" Padding="0" />
Вы заметили, что я использовал два разных метода привязки здесь. Те, кто использует Element Name, работают, а другой нет. Вот код позади:
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 Description}
Вместо:
{Binding Path=Description, ElementName=_UserInputOutput}
Кажется, что он работает только при использовании ElementName. Мне нужно экспортировать/импортировать этот XAML, поэтому я не могу иметь ElementName или импорт не будет работать.
Я думал, что это будет лучше всего:
{Binding Path=Description, RelativeSource={RelativeSource Self}}
Это не сработало.
Любые идеи? Спасибо!