2013-08-16 79 views
0

我是wpf datagrid的新手。我從數據網格中的非隱藏字段獲取值,但如果字段設置爲隱藏,則返回空值。我將列表綁定到數據網格。從wpf datagrid獲取隱藏值

<my:DataGrid RowHeight="30" ColumnWidth="50" AutoGenerateColumns="False" Margin="20,17,0,0" Name="dgUserEnroll" ItemsSource="{Binding}" Background="{StaticResource buttonFlash}" HorizontalAlignment="Left" Width="292" CanUserResizeColumns="False" CanUserAddRows="True" CanUserDeleteRows="True" RowDetailsVisibilityMode="Visible" Height="194" VerticalAlignment="Top"> 
     <my:DataGrid.Columns> 
      <my:DataGridTextColumn Header="id" Width="*" Binding="{Binding Path=UserID}" Visibility="hidden"/> 
      <my:DataGridTextColumn Header="UserName" Width="*" Binding="{Binding Path=AdminName}" /> 
      <my:DataGridTextColumn Header="Role" Width="*" Binding="{Binding Path=RoleName}" /> 

     </my:DataGrid.Columns> 
</my:DataGrid> 

C# Code behind: 
//To get values from 0th index. 
var UsrID = DatagridUtilities.GetCell(this.dgUserEnroll, rowIndex, 0); 
user.UserID = int.Parse((UsrID.Content as TextBlock).Text.ToString()); 

回答

1

而不是試圖讀取單元格的值,爲什麼不只是爲你的行拉出Databound項目?

if (dgUserEnroll.SelectedItem != null) 
{ 
    var data = (User)dgUserEnroll.SelectedItem; 
    var userID = data.UserId; 
}