依赖属性获取返回null的值

时间:2017-01-23 10:44:37

标签: c# wpf

我在用户控件中有一个依赖属性

    public List<Exclusion> SelectedExclusions
    {
        get { return (List<Exclusion>)GetValue(SelectedExclusionsProperty); }
        set { SetValue(SelectedExclusionsProperty, value); }
    }

    public static readonly DependencyProperty SelectedExclusionsProperty =
        DependencyProperty.Register(nameof(TimeSeriesChart.SelectedExclusions), typeof(List<Exclusion>), typeof(TimeSeriesChart), new PropertyMetadata(new List<Exclusion>()));

列表将在删除键上填充:

  protected override void OnKeyDown(KeyEventArgs e)
  {
    if(e.Key == Key.Delete)               
    {     
      this.SelectedExclusions.Add(this.Exclusions[this.Index]);
    }
  }                   
}

在视图模型中,我新增了一个列表&amp;公共财产。从setter调用delete命令:

private IList<Exclusion> selectedExclusionsToDelete = new List<Exclusion>();

 public IList<Exclusion> SelectedExclusionsToDelete
    {
        get
        {
            return this.selectedExclusionsToDelete;
        }
        set
        {
            this.selectedExclusionsToDelete = value;

            //Delete the selected exclusion 
            ExecuteDeleteSelectedExclusionsCommand();
            this.RaisePropertyChanged();                          
        }
    }

最后,我在视图中的xaml绑定:

SelectedExclusions="{Binding SelectedExclusionsToDelete, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>

我的问题是,在运行时SelectedExclusions dp getter返回null而不是List<Exclusion>鉴于PropertyMetadata值是List<Exclusion>类型,我在这里缺少什么?

0 个答案:

没有答案
相关问题