最初,我使用 AutoGeneratedColumns = True 从数据表中获取值来生成数据网格。但是,每个数据集的列数是固定的,我想相应地命名它们,因此在代码中命名它们但是如果在我运行代码时没有选择 Tab,那么我收到一个错误,即索引超出范围.
我决定做 AutoGeneratedColumns = False 并手动定义我的列。但是在续集中,我的数据 dataGrid 是空的,并且我的数据没有显示。数据表名称是 Underlyings,它是在运行时生成的,在此之前它甚至不存在。
在我的 XAML 代码下方:
<DataGrid ItemsSource ="{Binding Path=Underlying}" AutoGenerateColumns="False" HorizontalAlignment="Left" Margin="462,145,0,203" Name="dataGrid3" Width="872" >
<DataGrid.Columns>
<DataGridTextColumn Header="In" Binding="{Binding FirstColumnName}" />
<DataGridTextColumn Header="InL" Binding="{Binding SecondColumnName}" />
<DataGridTextColumn Header="Total " Binding="{Binding ThirdColumnName}" />
</DataGrid.Columns>
</DataGrid>
在下面的代码中
dataGrid3.ItemsSource = Underlying.DefaultView
但是我认为 XAML 绑定对我不起作用,因为我的数据表是在运行时生成的,所以在设计时没有什么可以绑定的。任何想法如何做到这一点?