首页 文章

使用DataGrid内的DataTrigger绑定到DataRowView

提问于
浏览
0

我正在尝试为数据网格实现单元格模板 . 问题是,当我尝试绑定到datagridview中的Object时,我没有得到我期望的值 .

这就是数据网格没有样式的样子:

datagrid plain

非常简单,但是当我尝试使用带触发器的单元格模板来设置样式时,这就是我得到的内容(上面有DAL.Task的每个单元格应该包含一个橙色圆圈):

datagrid styled

这是我用来设置网格样式的xaml:

<DataTemplate x:Key="MiddleDataGridCellTemplate">
 <Grid>
  <Image Name="CenterImage"
   HorizontalAlignment="Center"
   VerticalAlignment="Center"/>     
 </Grid>
 <DataTemplate.Triggers>
  <DataTrigger Binding="{Binding Row.ItemArray/TaskStatusName}"
   Value="In Progress">
   <Setter TargetName="CenterImage"
    Property="Source"
    Value="/besoControlLibrary;component/Resources/Spreadsheet_CheckedOut.png" />
  </DataTrigger>
 </DataTemplate.Triggers>
</DataTemplate>

我猜测“{Binding Row.ItemArray / TaskStatusName}”导致了问题,在datagridview中提取DAL.Task的TaskStatusName属性的正确方法是什么?

我发现空白单元格的值是DBNull,如果这有帮助的话 .

此外,这些值来自DataTable,它是DataGrid的上下文 .

2 回答

相关问题