我正在以horizondal的方式生成gridview。代码工作正常,但名称为column1和column2的虚拟行插入。我该如何防止这种插入?我的gridview代码是
str = "select MachID,EmpCode from EmpDetails where EmpCode='" + empcode + "'";
DataTable dt = GetData(str);
DataTable dt2 = new DataTable();
for (int i = 0; i <= dt.Rows.Count; i++)
{
dt.Columns.Add();
}
for (int i = 0; i < dt.Columns.Count; i++)
{
dt2.Rows.Add();
dt2.Rows[i][0] = dt.Columns[i].ColumnName;
}
for (int i = 0; i < dt.Columns.Count; i++)
{
for (int j = 0; j < dt.Rows.Count; j++)
{
dt2.Rows[i][j + 1] = dt.Rows[j][i];
}
}
gvOrders.DataSource = dt2;
gvOrders.DataBind();
我目前的o / p是
Column1 Column2
MachID 101
EmpCode ABC
我想阻止此column1和column2行。我怎么能这样做?
我的GetData函数是
private static DataTable GetData(string query)
{
DataTable dt = new DataTable();
SqlCommand cmd = new SqlCommand(query);
String constr = ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString;
SqlConnection con = new SqlConnection(constr);
SqlDataAdapter sda = new SqlDataAdapter();
cmd.CommandType = CommandType.Text;
cmd.Connection = con;
sda.SelectCommand = cmd;
sda.Fill(dt);
return dt;
}
答案 0 :(得分:1)
在您的代码隐藏中尝试将行标题可见性设置为false,如下所示:
gvOrders.RowHeadersVisible = false;
在您的aspx文件中,您可以将ShowHeader="False"
添加到您的asp:GridView标记。
答案 1 :(得分:0)
删除数据表中的重复行的代码dt
for (int i = 0; i < dt.Rows.Count-1; i++)
{
for (int j = i+1; j < dt.Rows.Count; j++)
{
if (dt.Rows[i].ItemArray.SequenceEqual(dt.Rows[j].ItemArray))
dt.Rows[j].Delete();
}
}
在第二行和第三行之间添加这些代码行