我想显示一个包含两列的网格 - 名称和进度。名称应该是一个字符串,进度是一个介于 0.00 和 1.00 之间的百分比值。我希望百分比显示为进度条或类似的东西。
我的窗口中有一个 DataGrid,创建了一个带有双精度和文件名的简单类。我的主要代码是这样的:
public ObservableCollection<DownloadFile> files = new ObservableCollection<DownloadFile>();
然后我将 设置ItemsSource
为这个集合,自动生成列设置为 true。到目前为止它工作正常,包括更新。
现在类中的 double Value 是 0 到 1 之间的值,一个百分比。由于没有进度条,我决定可以更改相应行的背景颜色,如下所示:
row.cell.Style.Background = new LinearGradientBrush(
Brushes.Green.Color,
Brushes.White.Color,
new Point(percentage, 0.5),
new Point(percentage + 0.1, 0.5));
有没有办法以某种方式..控制网格显示的内容?现在,我要么对差异感到不知所措,要么 DataGrid 与旧的 DataGridView 相比是一个巨大的退步,这也不是很好。但这似乎完全绑定到一些我不能轻易手动更改的真实数据。