http://www.cnblogs.com/kaixun001/archive/2009/02/16/1391722.html
DataGrid控件没有rows等属性我们如何全选与取消呢,在运用过程中做了个人小结,如果还有好方法,多多学习:
hl3292修改
//选择页面所有记录
<sdk:DataGrid x:Name="BankPenaltyLogDataGrid" AutoGenerateColumns="False" Width="960" ColumnWidth="Auto" IsReadOnly="True" MouseLeftButtonUp="BankPenaltyLogDataGrid_MouseLeftButtonUp_1" SelectionChanged="BankPenaltyLogDataGrid_SelectionChanged_1">
<sdk:DataGrid.Columns>
<sdk:DataGridTemplateColumn CanUserReorder="True" CanUserResize="True" CanUserSort="True" Header="状态" Width="50">
<sdk:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<CheckBox x:Name="checkboxisCheck"></CheckBox>
</DataTemplate>
</sdk:DataGridTemplateColumn.CellTemplate>
</sdk:DataGridTemplateColumn>
<!--<sdk:DataGridTextColumn CanUserReorder="True" CanUserResize="True" CanUserSort="True" Header="序号" Width="*" MinWidth="50" Binding ="{Binding ID}" />-->
<sdk:DataGridTextColumn CanUserReorder="True" CanUserResize="True" CanUserSort="True" Header="日志类型" Width="*" MinWidth="50" MaxWidth="100" Binding ="{Binding log_type}" />
<sdk:DataGridTextColumn CanUserReorder="True" CanUserResize="True" CanUserSort="True" Header="调用时间" Width="*" MinWidth="50" MaxWidth="200" Binding ="{Binding use_time}" />
<!--:格式转换-->
<sdk:DataGridTextColumn CanUserReorder="True" CanUserResize="True" CanUserSort="True" Header="决定书编号" Width="*" MinWidth="50" MaxWidth="150" Binding ="{Binding decision_no}" />
<sdk:DataGridTextColumn CanUserReorder="True" CanUserResize="True" CanUserSort="True" Header="输入信息" Width="*" MinWidth="50" MaxWidth="500" Binding ="{Binding input_info}" />
<sdk:DataGridTextColumn CanUserReorder="True" CanUserResize="True" CanUserSort="True" Header="返回信息" Width="*" MinWidth="50" MaxWidth="500" Binding ="{Binding return_info}" />
<sdk:DataGridTemplateColumn CanUserReorder="True" CanUserResize="True" CanUserSort="True" Header="详细" Width="*" MinWidth="40" MaxWidth="60" >
<sdk:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<HyperlinkButton Content="详细" Click="HyperlinkButton_Click"/>
</StackPanel>
</DataTemplate>
</sdk:DataGridTemplateColumn.CellTemplate>
</sdk:DataGridTemplateColumn>
</sdk:DataGrid.Columns>
</sdk:DataGrid>
//选择页面所有记录
private void btnSeletcAll_Click(object sender, RoutedEventArgs e)
{
foreach (object ovj in BankPenaltyLogDataGrid.ItemsSource)
{
if (null != BankPenaltyLogDataGrid.Columns[0] && null != BankPenaltyLogDataGrid.Columns[0].GetCellContent(ovj))
{
CheckBox cb = BankPenaltyLogDataGrid.Columns[0].GetCellContent(ovj).FindName("checkboxisCheck") as CheckBox;
if (null != cb)
{
cb.IsChecked = true;
}
}
}
}
//反选
private void btnSelectOther_Click(object sender, RoutedEventArgs e)
{
foreach (object ovj in BankPenaltyLogDataGrid.ItemsSource)
{
if (null != BankPenaltyLogDataGrid.Columns[0] && null != BankPenaltyLogDataGrid.Columns[0].GetCellContent(ovj))
{
CheckBox cb = BankPenaltyLogDataGrid.Columns[0].GetCellContent(ovj).FindName("checkboxisCheck") as CheckBox;
if (null != cb)
{
cb.IsChecked = !cb.IsChecked;
}
}
}
}