我使用MVVM模式开发WPF应用程序。我想从Datatable中向DataGrid显示动态列。
我添加了代码来显示它但它无法正常工作。数据表填充了数据,但在数据网格中,数据没有显示。
XAML:
<DataGrid Grid.Row="1" AutoGenerateColumns="False" GridLinesVisibility="All" Foreground="Black" ItemsSource="{Binding ItemSource, Mode=OneWay, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" IsReadOnly="True" />
视图模型:
private DataView _itemSource;
public DataView ItemSource
{
get { return _itemSource; }
set
{
_itemSource = value;
OnPropertyChanged("ItemSource");
}
}
public async Task PopulateData(string queryText)
{
var dt = await CustomReportQueryDAO.GetCustomReportQueryResult("select * from [Person]");
ItemSource = dt.DefaultView;
}
答案 0 :(得分:1)
您已在AutoGenerateColumns="False"
上设置了DataGrid
,但您尚未定义任何列。
尝试更改为AutoGenerateColumns="True"