В WPF я пытаюсь связать несколько элементов управления, но второй элемент управления не изменяется при изменении первого элемента управления.
У меня есть два класса: класс Task и класс Log, который хранится в виде коллекции в классе Task. Приведенные ниже списки привязаны к Задачам и внутренним Журналам для выбранной Задачи.
Проблема в том, что списки заполнены нормально при первой загрузке, но если я выберу другую задачу, я бы ожидал, что журналы будут обновлены в коллекции для новой задачи, но она не изменится из первоначально выбранной задачи при первой загрузке. Чего мне не хватает?
В конструкторе:
<ListBox x:Name="listBoxTasks" ItemsSource="{Binding}" DisplayMemberPath="Key"
Grid.Row="0" Grid.Column="0" Grid.RowSpan="2">
</ListBox>
<ListBox x:Name="listBoxLogs"
ItemsSource="{Binding Logs}" DisplayMemberPath="EntryDate"
Grid.Row="1" Grid.Column="1">
</ListBox>
В коде позади:
public MainWindow()
{
InitializeComponent();
IMongoCollection<Task> tasks = DataManager.GetData();
this.DataContext = tasks.AsQueryable();
}
Класс задачи:
public class Task : BusinessBase<Task>
{
public ObjectId _Id { get; set; }
public string Key { get; set; }
public string Description { get; set; }
public string Summary { get; set; }
public string Details { get; set; }
public IEnumerable<Log> Logs { get; set; }
public IEnumerable<Link> Links { get; set; }
public IEnumerable<String> RelatedKeys { get; set; }
public IEnumerable<TaskItem> Items { get; set; }
}