初学,很郁闷,从数据库里查询数据,结果界面只绑定第一列数据,其他两列不显示
在不绑定第一列的情况下,前台界面数据显示仍出现滚动条,但就是不显示数据,感觉遇到鬼了。
如果绑定手动创建的DataTable,显示正常。
还请高手指点迷经前台界面
<ListView Name="listView1" MinWidth="280">
<ListView.View>
<GridView x:Name="gridView1">
<GridViewColumn Header="ID" DisplayMemberBinding="{Binding ID}" Width="100"></GridViewColumn>
<GridViewColumn Header="UserName" DisplayMemberBinding="{Binding UserName}" Width="100"></GridViewColumn>
<GridViewColumn Header="Balance" DisplayMemberBinding="{Binding Balance}" Width="100"></GridViewColumn>
</GridView>
</ListView.View>
</ListView>
后台数据绑定 private void getData()
{
try
{
string sql = "select adminid as ID,adminname as UserName, adminpass as Balance from admininfo t where adminid<100 order by adminid";
string OracleConnString = "data source=oradb;uid=bookshop;pwd=bookshop";
DataSet ds = DBOracle.GetDataOra(sql, OracleConnString);
//通过ItemSource为listView指定数据源
DataTable dt = ds.Tables[0];
listView1.ItemsSource = dt.DefaultView;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
//listView1.ItemsSource = CreateDataTable().DefaultView;
}
DataTable CreateDataTable()
{
DataTable tbl = new DataTable("Customers");
tbl.Columns.Add("ID", typeof(int));
tbl.Columns.Add("UserName", typeof(string));
tbl.Columns.Add("Balance", typeof(decimal));
tbl.Rows.Add(1, "John Doe", 100m);
tbl.Rows.Add(2, "Jane Dorkenheimer", -209m);
tbl.Rows.Add(3, "Fred Porkroomio", 0m);
tbl.Rows.Add(4, "Mike Spike", 550m);
tbl.Rows.Add(5, "Doris Yakovakovich", 0m);
tbl.Rows.Add(6, "Boris Zinkwolf", -25m);
return tbl;
}
在不绑定第一列的情况下,前台界面数据显示仍出现滚动条,但就是不显示数据,感觉遇到鬼了。
如果绑定手动创建的DataTable,显示正常。
还请高手指点迷经前台界面
<ListView Name="listView1" MinWidth="280">
<ListView.View>
<GridView x:Name="gridView1">
<GridViewColumn Header="ID" DisplayMemberBinding="{Binding ID}" Width="100"></GridViewColumn>
<GridViewColumn Header="UserName" DisplayMemberBinding="{Binding UserName}" Width="100"></GridViewColumn>
<GridViewColumn Header="Balance" DisplayMemberBinding="{Binding Balance}" Width="100"></GridViewColumn>
</GridView>
</ListView.View>
</ListView>
后台数据绑定 private void getData()
{
try
{
string sql = "select adminid as ID,adminname as UserName, adminpass as Balance from admininfo t where adminid<100 order by adminid";
string OracleConnString = "data source=oradb;uid=bookshop;pwd=bookshop";
DataSet ds = DBOracle.GetDataOra(sql, OracleConnString);
//通过ItemSource为listView指定数据源
DataTable dt = ds.Tables[0];
listView1.ItemsSource = dt.DefaultView;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
//listView1.ItemsSource = CreateDataTable().DefaultView;
}
DataTable CreateDataTable()
{
DataTable tbl = new DataTable("Customers");
tbl.Columns.Add("ID", typeof(int));
tbl.Columns.Add("UserName", typeof(string));
tbl.Columns.Add("Balance", typeof(decimal));
tbl.Rows.Add(1, "John Doe", 100m);
tbl.Rows.Add(2, "Jane Dorkenheimer", -209m);
tbl.Rows.Add(3, "Fred Porkroomio", 0m);
tbl.Rows.Add(4, "Mike Spike", 550m);
tbl.Rows.Add(5, "Doris Yakovakovich", 0m);
tbl.Rows.Add(6, "Boris Zinkwolf", -25m);
return tbl;
}
DataTable dt = ds.Tables[0];调试的时候跟上一下这个东西 看看里面有你要的数据没
那说明xaml没有问题..是数据库的问题. DataSet ds = DBOracle.GetDataOra(sql, OracleConnString);
在这行打个断点.看看里面是什么