Динамически добавлять столбцы DataGrid DateTime - PullRequest
2 голосов
/ 30 июля 2011

Я пытаюсь динамически добавлять DateTime (30.07.2011) столбцы в DataGrid. Я загружу скриншот моей сетки, которую я сделал вручную. Я хочу сделать комбинированный список. Поэтому, если пользователь выбирает 2 недели, то сетка добавляет столбцы изо дня в день.

Screenshot

1 Ответ

2 голосов
/ 30 июля 2011

Вы можете сделать что-то вроде этого

private void AddColumns(GridView gv, string[] dateColumns)
{
    for (int i = 0; i < dateColumns.Length; i++)
    {
        gv.Columns.Add(new GridViewColumn
        {
            Header = dateColumns[i],
            DisplayMemberBinding = new Binding(String.Format("[{0}]", i))
        });
    }
}

Это может быть вызвано в поле со списком OnSelectionChanged()

Вы также можете использовать DataTemplate для правильного отображения столбцов:

<DataTemplate DataType="{x:Type DateTime}">
        <TextBlock Text="{Binding StringFormat={0:d}}"  />
</DataTemplate>

Нет, просто настройте свой StringFormat для ваших нужд:

Basic is Binding="{Binding date, StringFormat={}{0:dd/MM/yyyy}}"

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...