У меня есть список привязывается к TreeView, как:WPF Databinding Treeview в список не обновляется
XAML:
<TreeView Name="browserTree"
BorderBrush="DarkSlateGray"
BorderThickness="1"
Grid.Row="2"
Margin="0,3,0,0"
ItemsSource="{Binding UpdateSourceTrigger=PropertyChanged}">
<TreeView.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding}"/>
</DataTemplate>
</TreeView.ItemTemplate>
</TreeView>
C#:
browserTree.DataContext = treeList;
Я обновляю список с помощью:
void QueryChange(string s)
{
rCM.SetCommand(s);
treeList.Clear();
SqlDataReader sr = rCM.ExecuteReader(System.Data.CommandBehavior.Default);
while (sr.Read())
{
treeList.Add((string)sr["tree_hdr"]);
}
sr.Close();
}
List<string>
- это просто местозаполнитель на данный момент для более значимого класса данных, который я еще не реализовал. Но сейчас мне нужно знать, почему TreeView не обновляется, чтобы отразить изменения, внесенные в список.
Спасибо, сэр! Я не знаю, почему это работает, но это так! – FlyingStreudel
Наблюдаемая коллекция сообщит ui, когда она будет обновлена, поэтому объект пользовательского интерфейса может обновить себя. – gmn