是否可以在不指定表或列的情况下将查询绑定到数据网格?
我们说我有这个问题:
string query = "select Email from Persons'
但它会改变,下次我有:
listPerson.DataContext = db.Query....
我使用的是Sqlite Net扩展,但是我在绑定时遇到问题而没有明确指定表格对象,例如:
{{1}}
答案 0 :(得分:0)
是的,您可以动态地将任何一个或多个表绑定到datagrid。 首先在xaml代码中验证您的列:
<DataGrid x:Name="dataGrid" >
<DataGrid.Columns>
<DataGridTextColumn Header="col1" Binding="{Binding col1}">
<DataGridTextColumn Header="col2" Binding="{Binding col2}">
</DataGrid.Columns>
</DataGrid>
在xaml代码后面编码绑定数据
private void FillDataGrid()
{
var query = Context.Database.SqlQuery<Table>("Select * From table");
var result = query.ToList();
dataGrid.ItemsSource = result ;
}
答案 1 :(得分:0)
让我再解释一下我的问题。
我想做一些动态报告。我使用SQLite数据库和SQLite .NET扩展。我从xml文件加载查询(此查询可以是来自数据库的任何内容)。我想以某种方式将此查询的结果加载到grid或listview。 通常它不是问题因为我&#34;映射&#34;我的数据到模型中的对象,例如:
using (var db = new SQLiteConnection(new SQLite.Net.Platform.Generic.SQLitePlatformGeneric(), "zakupy.db"))
{
listPerson = db.Table<Persons>().Where(x => x.Property == "P" && x.Status == 0).ToList();
}
lstPersons.DataContext = listPerson;
现在我尝试做这样的事情:
using (var db = new SQLiteConnection(new SQLite.Net.Platform.Generic.SQLitePlatformGeneric(), "zakupy.db"))
{
var cc = db.Query<Table>("SELECT * from Events");
lstPersons.DataContext = cc.ToList();
}