This article has been localized into Russian by the community.
DataGrid
Элемент DataGrid очень похож своим внешним видом на ListView, при использовании GridView, но при этом несет в себе больший функционал. Например, DataGrid может автоматически генерировать столбцы, в зависимости от вводимых Вами данных. Tакже, DataGrid по умолчанию можно редактировать, благодаря этому конечный пользователь будет в состоянии изменять данные в ячейках DataGrid.
Чаще всего DataGrid используется в сочетании с базой данных, но, как и большинство WPF элементов, может функционировать и на локальном источнике данных, например, на списке объектов. Продемонстрировать это очень просто (именно такой подход к обучению мы предлагаем Вам в рамках руководства).
Простой элемент DataGrid
Начать можно вовсе без каких-либо свойств DataGrid, ведь он и так, "из коробки" предлагает большой функционал. Именно так мы и сделаем в примере ниже, подключив к DataGrid список объектов User, в качестве источника данных:
<Window x:Class="WpfTutorialSamples.DataGrid_control.SimpleDataGridSample"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="SimpleDataGridSample" Height="180" Width="300">
<Grid Margin="10">
<DataGrid Name="dgSimple"></DataGrid>
</Grid>
</Window>
using System;
using System.Collections.Generic;
using System.Windows;
namespace WpfTutorialSamples.DataGrid_control
{
public partial class SimpleDataGridSample : Window
{
public SimpleDataGridSample()
{
InitializeComponent();
List<User> users = new List<User>();
users.Add(new User() { Id = 1, Name = "John Doe", Birthday = new DateTime(1971, 7, 23) });
users.Add(new User() { Id = 2, Name = "Jane Doe", Birthday = new DateTime(1974, 1, 17) });
users.Add(new User() { Id = 3, Name = "Sammy Doe", Birthday = new DateTime(1991, 9, 2) });
dgSimple.ItemsSource = users;
}
}
public class User
{
public int Id { get; set; }
public string Name { get; set; }
public DateTime Birthday { get; set; }
}
}
Фактически, это все, что Вам необходимо знать, для того чтобы начать использование DataGrid. Источником данных может быть таблица/представление базы данных или даже файл XML - в этом плане DataGrid способен разобраться со всем.
Нажав на одну из ячеек, Вы заметите, что в DataGrid есть поддержка редактирования свойств по умолчанию. Приятным бонусом является тот факт, что если вы кликните на заголовок любого столбца, то заметите, что DataGrid поддерживает еще и сортировку.
В последнюю пустую строку Вы можете добавить источник данных, просто вводя информацию в ячейки.
В итоге
Наверняка Вы обратили внимание на то, насколько просто начать работу с DataGrid, но, при этом, он является очень гибким в плане настройки элементом. В следующих главах мы погрузимся во множество интересных механизмов, которые можно реализовать с помощью этого элемента, так что продолжайте читать.