我是新的ASP.NET,我从未使用过GridView或DataGrid,但我无法在线找到有关如何做我需要的有用示例。我需要在页面上显示一些数据,我知道我应该使用GridView,但我似乎无法显示任何内容。
我有以下DataSet:
DataSet ds = new DataSet("MyTables");
ds.Tables.Add("Users");
ds.Tables["Users"].Columns.Add("ID");
ds.Tables["Users"].Columns.Add("Name");
ds.Tables["Users"].Columns.Add("Email");
ds.Tables["Users"].Rows.Add(0,"Ace","ace@example.com");
ds.Tables["Users"].Rows.Add(1,"Biff","biff@example.com");
ds.Tables["Users"].Rows.Add(2,"Chuck","chuck@example.com");
ds.Tables["Users"].Rows.Add(3,"Dick","dick@example.com");
myGrid.DataSource = ds.Tables["Users"].DefaultView;
myGrid.DataBind();
Heres是我的ASP.NET:
<asp:GridView ID="myGrid" runat="server">
</asp:GridView>
答案 0 :(得分:3)
我认为你要将列添加到错误的表中。尝试这样的事情:
DataSet ds = new DataSet("MyTables");
ds.Tables.Add("Users");
DataTable userTable = ds.Tables["Users"];
userTable.Columns.Add("ID");
userTable.Columns.Add("Name");
userTable.Columns.Add("Email");
userTable.Rows.Add(0,"Ace","ace@example.com)";
userTable.Rows.Add(1,"Biff","biff@example.com)";
userTable.Rows.Add(2,"Chuck","chuck@example.com)";
userTable.Rows.Add(2,"Dick","dick@example.com)";
myGrid.DataSource = userTable;
myGrid.DataBind();
答案 1 :(得分:0)
您正在引用两个完全不同的表。您创建表USERS然后将列添加到名为ADD USERS的表,然后将行添加到Users表。当你绑定它时,什么都不会出现。
更改此代码
ds.Tables["Add Users"].Columns.Add("ID");
ds.Tables["Add Users"].Columns.Add("Name");
ds.Tables["Add Users"].Columns.Add("Email");
到这个
ds.Tables["Users"].Columns.Add("ID");
ds.Tables["Users"].Columns.Add("Name");
ds.Tables["Users"].Columns.Add("Email");
答案 2 :(得分:0)
我在想你得到一个对象null引用错误。发生的事情是你在名为“添加用户”的表中创建列,其中没有名为“添加用户”的表。如果你只是更改你拥有的三行ds.Tables [“添加用户”]并将其改为ds.Tables [“用户”]一切都应该没问题。
希望这适合你。