我想在我的UI中顯示一個數據網格。我將它綁定到我的viewmodel中的數據集。下面是代碼:將數據集/ DataTable綁定到一個xaml數據網格
查看:
<StackPanel Orientation="Horizontal" Height="Auto" Name="stackPanel4" Width="Auto" Grid.Row="4">
<DataGrid Name="QueryGrid" AutoGenerateColumns="True" Height="1000" Width="1000" ItemsSource="{Binding QueryTable}" Visibility="{Binding Path=QueryGridVisiblity, Converter={StaticResource BoolToVis}}" />
</StackPanel>
視圖模型:
private void OnRunQuery()
{
int count = 0;
DataSet queryDataset = null;
if (flag1 == true)
count++;
else if (flag2 == true)
count++;
else if (flag3 == true)
count++;
else if (flag4 == true)
count++;
else if (flag5 == true)
count++;
else if (flag6 == true)
count++;
if (paramCount > 0 && sqlQuery != null && paramCount == count)
{
queryDataset = _service.GetQueryDataSource(sqlQuery);
m_QueryTable = queryDataset;
OnPropertyChanged("QueryTable");
m_Visibility = true;
OnPropertyChanged("QueryGridVisiblity");
}
}
private DataSet m_QueryTable;
public DataSet QueryTable
{
get
{
return m_QueryTable;
}
set
{
m_QueryTable = value;
OnPropertyChanged("QueryTable");
}
}
截至上執行的應用程序,不填充數據網格。但我在我的數據集中獲取數據。
任何建議,我錯過了邏輯? 我是WPF的新手。
您可以更改的ItemSource綁定指向表查看您所需要的,假設你使用單個表stucture這應該在下面的回答中工作'ItemsSource =「{Binding QueryTables.Tables [0] .DefaultView}」'like @devdigital metioned。 –