我需要根据其他选择创建多个GridView。
我猜我只能在页面后面的代码上执行此操作。但是,我是否需要在.aspx页面中指定ASP:GridView控件?
以下是我的代码:
if (dt.Rows.Count > 0)
{
for (int j = 0; j < dt.Rows.Count; j++)
{
sqlStatement = "select table_name, column_name, [Description], data_type from INFORMATION_SCHEMA.COLUMNS WHERE tableName = '" + dt.Rows[j][0].ToString()+ "'";
command = new SqlCommand(sqlStatement, conn);
SqlDataAdapter adapter = new SqlDataAdapter(command);
DataSet ds = new DataSet();
adapter.Fill(ds);
GridView gv = new GridView();
gv.DataSource = ds;
Page.Controls.Add(gv);
}
Page.DataBind();
}
我尝试运行上面的代码,但不断收到错误消息:
Control 'ctl01' of type 'GridView' must be placed inside a form tag with runat=server.
答案 0 :(得分:0)
检查您的表单标签是否包含runat =“server”?
答案 1 :(得分:0)
您应该始终将控件插入PlaceHolders
检查出来:
http://www.developerfusion.com/code/3826/adding-controls-to-placeholders-dynamically/
答案 2 :(得分:0)
找到修复程序...我在aspx页面和后面的代码中创建了一个名为Panel1的ASP.NET面板,而不是Page
我放了Panel1。
感谢大家的帮助!