简体   繁体   English

将数据表绑定到数据网格

[英]Binding a DataTable to a DataGrid

XAML: XAML:

<DataGrid x:Name="grid1" AlternatingRowBackground="AliceBlue" AlternationCount="2" AutoGenerateColumns="False" HorizontalAlignment="Left"  Margin="10,51,0,0" VerticalAlignment="Top" Width="762" Height="480"   GridLinesVisibility="None"  />

Code: 码:

DataTable dt = new DataTable();
          dt.Columns.Add("family");
          dt.Columns.Add("fund");
          dt.Rows.Add("XXX-C", "XXX");
          dt.Rows.Add("DDD-C", "DDD"); grid1.ItemsSource = dt.DefaultView;  

After running the code I get only empty grid, no col headers no row date. 运行代码后,我只会得到空网格,没有col标题,没有行日期。 But still I see 2 empty rows (that represent 2 items in a table) 但我仍然看到2个空行(代表表中的2个项目)

What am I missing here , please? 请问我在这里想念什么?

You specified AutoGenerateColumns="False" in the DataGrid definition without specifying any DataGridColumns. 您在DataGrid定义中指定了AutoGenerateColumns =“ False”,而没有指定任何DataGridColumns。 Either manually specify the columns or set AutoGenerateColumns="True". 手动指定列或设置AutoGenerateColumns =“ True”。

<DataGrid x:Name="grid1" 
          AlternatingRowBackground="AliceBlue" 
          AlternationCount="2" 
          AutoGenerateColumns="False" 
          HorizontalAlignment="Left"  
          Margin="10,51,0,0" 
          VerticalAlignment="Top" 
          Width="762" 
          Height="480"   
          GridLinesVisibility="None">
    <DataGrid.Columns>
      <DataGridTextColumn Header="Family"
                          Binding="{Binding family}"/>
      <DataGridTextColumn Header="Fund"
                          Binding="{Binding fund}"/>
    </DataGrid.Columns>
  </DataGrid>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM