У меня есть usercontrol с свойством зависимости.
public sealed partial class PenMenu : UserControl, INotifyPropertyChanged
{
public event PropertyChangedEventHandler PropertyChanged;
protected void OnPropertyChanged(string propertyName)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
public bool ExpandCollapse
{
get
{
return false;
}
set
{
//code
}
}
public static readonly DependencyProperty ExpandCollapseProperty = DependencyProperty.Register("ExpandCollapse", typeof(bool), typeof(PenMenu), null);
//some more code
}
И присваиваю значение на странице XAML следующим образом:
<Controls:PenMenu x:Name="penMenu" Opened="Menu_Opened"
ExpandCollapse="{Binding PenMenuVisible}" />
Но это не касается GET-SET части свойства ExpandCollapse в usercontrol. Поэтому я добавил bool для конвертера bool, чтобы проверить, какое значение передается с привязкой, например:
<Controls:PenMenu x:Name="penMenu" Opened="Menu_Opened"
ExpandCollapse="{Binding PenMenuVisible, Converter={StaticResource booleanToBooleanConverter}}" />
И с точкой останова в конвертере, я вижу, что переданное значение верное. Какова возможная причина, которую он не присвоил свойству Dependency?
Также на странице XAML, если я говорю:
<Controls:PenMenu x:Name="penMenu" Opened="Menu_Opened"
ExpandCollapse="true"/>
то он попадает в элемент GET-SET свойства ExpandCollapse в usercontrol. Я застрял. Это странно. Пожалуйста помоги.