WPF DataGrid数据和列不可见

时间:2014-04-18 16:55:57

标签: c# wpf datagrid

我所做的是设置具有多行选择支持的datagrid。但问题是,当AutoGenerateColumns设置为false时,多行选择有效,但是我从数据库上传的数据不会显示。当我将AutoGenerateColumns切换为true时,我可以看到数据,但单击多选功能将停止工作。

这是xaml代码:

<DataGrid x:Name="Hello" ItemsSource="{Binding Path=Albums}"
              Grid.Row="0"
              AutoGenerateColumns="True"  SelectionMode="Extended" Loaded="dgCustomers_Loaded">
                    <DataGrid.Columns>
                        <DataGridCheckBoxColumn ElementStyle="{DynamicResource MetroDataGridCheckBox}"
                                    EditingElementStyle="{DynamicResource MetroDataGridCheckBox}"
                                    Header="IsSelected"
                                    Binding="{Binding RelativeSource={RelativeSource AncestorType=DataGridRow}, Path=IsSelected, Mode=OneWay}"
                                    />
                    </DataGrid.Columns>
                </DataGrid>

这就是我填写datagrid的方式:

private void dgCustomers_Loaded(object sender, RoutedEventArgs e)
    {

        var grid = sender as DataGrid; //Creates its self as an object
        grid.ItemsSource = CustomerDataAdapter.GetData(); //Shows all of the data in the Customer table
    }

1 个答案:

答案 0 :(得分:0)

我认为你不能同时自动生成列和在XAML中明确指定列。我相信它是其中之一。我相信你必须将AutoGenerateColumns设置为false&amp;指定每个列&amp;它的绑定。