我在我的WPF應用程序中有一個DataGrid。我想知道是否有一種方法來顯示數據網格中列的默認值。例如,我讓用戶有能力向DataGrid添加新行。因此,在DataGrid的底部,用戶添加數據總是有一個空白的空行。我希望在這一行有一個列的默認值。有什麼辦法可以實現這個功能嗎?謝謝!WPF Datagrid列的默認值
2
A
回答
2
比方說,你DataGrid
的ItemsSource
是SomeClass
集合,你是顯示不同SomeClass
在DataGrid列的Properties
。你可以做的是在構造函數的默認SomeClass
中指定Properties
的一些默認值。通過這種方式,您可以在DataGrid中使用默認列值。
編輯
正如你所說的柱的itemssource
是一個字符串有我能想到的一個辦法..
讓它的SomeClass
集合將只有一個string
財產。在SomeClass
的默認構造函數中,爲該字符串分配一個默認值。該默認值將出現在您的數據網格列中
0
實際上,您可以在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();
}
}
如果您需要雙向綁定,則必須在DataTemplate中使用2個元素。一個用於空白行,第二個用於雙向裝訂的常規行。設置可見性綁定以隱藏常規行的第一個元素和空白行的第二個元素。
請記住,如果您確定了某個屬性集合對象的路徑,它將不會在空白行情況下引發ValueConverter。
相關問題
- 1. WPF DataGrid - 生成對象的默認值
- 2. WPF中的Datagrid - 1列默認排序
- 3. WPF DataGrid:指定默認排序
- 4. 如何更改WPF Datagrid上的默認列標題?
- 5. 設置默認值道場的DataGrid
- 6. 設置默認值WPF
- 7. 獲取datagrid列值 - WPF C#
- 8. 默認列值
- 9. 默認列值
- 10. WPF的DataGrid列
- 11. 在DataGrid列中設置DatePicker的默認值
- 12. TSQL默認列值
- 13. DependencyProperty的默認值和子類DataGrid的中斷屬性
- 14. WPF DataGrid列寬
- 15. WPF Caliburn.Micro DataGrid列
- 16. wpf datagrid combobox列
- 17. 在wpf組合框中的默認值
- 18. 自定義WPF控件的默認值
- 19. wpf組合框的默認值
- 20. WPF:定義綁定的默認值
- 21. 如何在wpf datagrid中繼承默認的文本框樣式?
- 22. C#WPF Datagrid - 設置數據綁定組合框的默認選定值
- 23. 如何設置WPF DataGrid列的默認排序方向爲降序?
- 24. 更改列的默認值
- 25. 添加列的默認值
- 26. SQL Server列的默認值
- 27. 改變列的默認值
- 28. 文本列的默認值
- 29. 停止Datagrid默認選擇第一行
- 30. WPF DataGrid:默認取消第一行選擇
什麼是DataGrid的itemssource? – 2012-01-13 07:05:50
列itemssource是一個可觀察的集合 –
2012-01-13 07:07:16