是否有可能设置进度为背景的DataGridView行? 或颜色只有行的一部分从左至右? 我有一个代表一些动态变化的数据行,我需要证明的进展莫名其妙。 我想用一整行的背景为一个进度条,我该怎么办呢?
Answer 1:
如果你想使用整个排它可能是最好覆盖默认模板中的DataGridRow
使用DataGrid.RowStyle
,那么你躺在其他内容下方,如进度
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type DataGridRow}">
<Border x:Name="DGR_Border"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
SnapsToDevicePixels="True">
<Grid>
<ProgressBar Value="{Binding SomeProperty" Minimum="0" Maximum="100"/>
<!-- Rest of default template here -->
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter Property="Template">
Answer 2:
您可以使用DataGrid的模板列显示出任何一种的控制。
<DataGrid ItemsSource="{Binding items}">
<DataGrid.Columns>
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ProgressBar></ProgressBar>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid>
文章来源: ProgressBar as background for DataGridView rows