WPF обрабатывает источники данных иначе, чем WinForms.Сначала это выглядит более сложным в WPF, потому что вы не можете получить доступ к исходной коллекции, как вы привыкли в WinForms.Тем не менее, вы быстро обнаружите, что WPF делает более естественной разработку.
В WPF вы хотите привязать ваш элемент управления пользовательского интерфейса (например, ListView) к источнику данных.Источник данных - это просто набор в коде любого пользовательского типа, каким вы хотите его видеть.До тех пор, пока вы предоставляете соответствующий доступ к коллекции, любой ваш выделенный код может обращаться к исходным данным, не обращаясь к ListView.
Для представлений списка источником данных будет ObservableCollection в DataContext ск которому ваше мнение подключено.Тип T является типом пользовательского класса.С помощью кода XAML вы можете определить шаблон данных в ListView, который описывает, как свойства вашего пользовательского типа класса отображаются для каждого элемента данных.
Чтобы узнать больше, изучите шаблон пользовательского интерфейса MVVM и изучите интерфейс INotifyPropertyChanged.
Например:
Код сзади
internal class MyViewModel
{
public ObservableCollection<Person> People = new ObservableCollection<People>();
// code to populate People
}
public class MyWindow
{
public MyWindow()
{
DataContext = new MyViewModel();
}
}
Вид
<ListView ItemsSource={Binding Path=People, Mode=OneWay}>
<ListView.DataTemplate>
<Label Content={Binding Path=FirstName, Mode=OneWay} />
<!-- Blah blah blah -->
</ListView.DataTemplate>
</ListView>
Эта статья MSDN углубляется в детали (см. Фрагменты кода и примеры в самом низу).