我有一个gridview,在用户按下带有查询代码的按钮后显示来自1个表的查询数据,这个gridview有autogeneratecolumns = false,我自己添加了BoundField DataField标题文本,例如,db中的第一列有命名为“prd_nome”,我将其更改为“nome”,一切正常。
现在我在数据库中创建了另一个表,具有不同的名称和不同的列名,我还添加了另一个带有查询代码的按钮,以从该表中获取数据,但为了现在显示数据autogeneratecolumns = true,我测试了按钮并且它可以工作,但是标题文本与列名相同,并且 ID 列也显示为两个查询。
我如何将标题文本硬编码为我想要的内容以及如何隐藏 ID 列?通过标签?通过boundfield数据字段?通过 AS sql 运算符?如果有人可以帮助我,我将不胜感激,因为我是 ac# 新手
这是当前的gridview asp代码:
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="true"></asp:GridView>
这是从第一个表传递查询的按钮的代码:
protected void Button1_Click(object sender, EventArgs e)
{
DataTable dt = new DataTable();
SqlConnection connection = new SqlConnection(GetConnectionString());
connection.Open();
SqlCommand sqlCmd = new SqlCommand("SELECT * FROM [ERPDQ].[dbo].[prd] WHERE prd_desc LIKE ('torta%')", connection);
SqlDataAdapter sqlDa = new SqlDataAdapter(sqlCmd);
sqlDa.Fill(dt);
if (dt.Rows.Count > 0)
{
GridView1.DataSource = dt;
GridView1.DataBind();
}
connection.Close();
}
这是传递有关第二个表的查询的按钮中的代码:
protected void Button6_Click(object sender, EventArgs e)
{
DataTable dt = new DataTable();
SqlConnection connection = new SqlConnection(GetConnectionString());
connection.Open();
SqlCommand sqlCmd = new SqlCommand("SELECT * FROM [ERPDQ].[dbo].[outra]", connection);
SqlDataAdapter sqlDa = new SqlDataAdapter(sqlCmd);
sqlDa.Fill(dt);
if (dt.Rows.Count > 0)
{
GridView1.DataSource = dt;
GridView1.DataBind();
}
connection.Close();
}
}