2010-05-19 155 views
0

我試圖綁定到,像這樣一個自定義的控制:WPF綁定更新不及時時,綁定對象被更新

<my:GanttChartTaskListView Name="ganttChartTaskListView1" ItemsSource="{Binding Source={x:Static local:TaskCollection.taskList}}" /> 

在我的WPF窗口構造我添加的項目添加到我的任務列表,在加載時我可以在我的自定義控件中看到該項目,但是,當我隨後添加項目時它不會更新。我嘗試設置Mode = TwoWay,然後,它說「路徑」是必需的,我不熟悉這樣的綁定(這對我來說是新的)。

這裏是我TaskCollection類:

namespace ProjectManager 
{ 
    public static class TaskCollection 
    { 
     private static List<TaskItem> _taskList = new List<TaskItem>(); 

     public static List<TaskItem> taskList 
     { 
      get {return _taskList; } 
      set { _taskList = value; } 
     } 
    } 
} 

任何想法?有沒有更好/更簡單的方法來做到這一點?

回答

5

必須告訴WPF系統該項目已被添加到列表中。

最簡單的方法是綁定到System.Collections.ObservableCollection<TaskItem>而不是List<TaskItem>,這將在集合更改時引發通知。

+1

謝謝你,你是男人中的上帝 – 2010-05-19 17:32:16