У меня есть DataGrid в моем приложении WPF. Мне было интересно, есть ли способ показать значения по умолчанию для столбца в datagrid. Например, я позволяю пользователю добавлять новые строки в DataGrid. Следовательно, в нижней части DataGrid всегда есть пустая строка, для которой пользователь должен добавлять данные. Я надеялся получить значение по умолчанию для столбца в этой строке. Есть ли способ достичь этой функциональности? Благодаря!Значение по умолчанию для столбца Datagrid WPF
ответ
Скажем ItemsSource
вашей DataGrid
является сбор SomeClass
и вы показываете разные Properties
из SomeClass
в DataGrid Столбцы. Что вы можете сделать, так это в конструкторе по умолчанию SomeClass
присвоить значение Properties
по умолчанию. Таким образом, вы можете иметь значение столбца по умолчанию в DataGrid.
Редактировать
Как вы сказали, что itemssource
столбца является строкой, есть один способ, которым я могу думать ..
Сделать это коллекция SomeClass
, которая будет иметь только string
свойство. В конструкторе по умолчанию SomeClass
присвойте этой строке значение по умолчанию. Это значение по умолчанию появится в столбце таблицы данных
Фактически вы можете сделать это с помощью ValueConverters. Когда CanUserAddRows = True, DataContext строки привязывается к элементу ItemsSource или к {DataGrid.NewItemPlaceholder} для пустой строки.
<DataGrid ItemsSource="{Binding Path=Collection}" CanUserAddRows=True >
<DataGrid.Columns>
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding Converter={StaticResource ShowSuitablePart}}"/>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid>
И это код преобразователя ShowSuitablePart.
public class ShowSuitablePart : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
if (value.ToString() == "{DataGrid.NewItemPlaceholder}")
return "This is blank row, just click me to create a new one";
else
((YourCollectionObject)value).SomeProperty;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new Exception();
}
}
Если вам нужна привязка TwoWay, вам придется использовать 2 элемента в DataTemplate. Один для пустого ряда, второй для регулярных строк с привязкой twoway. Установите привязку видимости, чтобы скрыть первый элемент для регулярных строк и второй элемент для пустой строки.
Помните, если вы определите Путь к некоторому свойству объекта коллекции, он не будет поднимать ValueConverter в пустую строку.
- 1. Как изменить заголовок столбца по умолчанию на WPF Datagrid?
- 2. wpf datagrid значение столбца заголовка столбца фильтра
- 3. WPF DataGrid сортировки по умолчанию не работает
- 4. WinForms DataGrid значение по умолчанию
- 5. WPF DataGrid: укажите сортировку по умолчанию
- 6. значение столбца по умолчанию
- 7. Задайте значение по умолчанию для столбца: значение другого столбца
- 8. WPF Data Grid Просмотреть значение по умолчанию Checkbox значение get
- 9. Установите значение по умолчанию COMBOBOX в WPF
- 10. установить значение по умолчанию для столбца extjs
- 11. Каково значение по умолчанию для двоичного столбца?
- 12. Значение по умолчанию для изменения столбца ActiveRecord
- 13. sqlite3 изменить значение по умолчанию для столбца
- 14. Как установить значение по умолчанию для столбца?
- 15. SQL Server - значение по умолчанию для столбца
- 16. Недопустимое значение по умолчанию для «столбца»
- 17. Alter значение столбца по умолчанию
- 18. Кассандра. По умолчанию значение столбца
- 19. Значение по умолчанию столбца Alter
- 20. Обновить заголовок столбца столбца DataGrid WPF по коду за
- 21. Установите значение столбца в значение по умолчанию
- 22. По умолчанию Содержимое для пустого Datagrid или Listbox в WPF
- 23. Проверка правильности столбца DataGrid (WPF)
- 24. Запретить изменение столбца Datagrid WPF
- 25. WPF Пользовательского заголовка столбца DataGrid
- 26. Многоуровневая заголовок столбца для DataGrid в WPF
- 27. WPF DataGrid - Создание нового пользовательского столбца
- 28. WPF Datagrid Ширина столбца CodeBehind
- 29. WPF DataGrid сортировать по полю ComboBox
- 30. SQL Server: значение столбца по умолчанию для столбца не применяется?
Что такое itemssource вашего DataGrid? –
Элементы столбцов itemssource являются наблюдаемым цветом –