怎样动态创建gridview的链接列

2025-04-19 21:25:39
推荐回答(2个)
回答1:

在程序运行中使GridView动态生成列,而并不是将列固定写死在GridView上,写个绑定GrideView的方法,参考如下:

///


/// 绑定生成GridView
///

/// 要绑定的GridView
/// GridView的数据源
/// GridView的DataKeyNames
public static void GridViewBind(GridView gdv, DataTable dtblDataSource, string strDataKey)
{
gdv.Columns.Clear();

gdv.AutoGenerateColumns = false;
gdv.DataSource = dtblDataSource;
gdv.DataKeyNames = new string[] { strDataKey };

for (int i = 0; i < dtblDataSource.Columns.Count; i++) //绑定普通数据列
{
BoundField bfColumn = new BoundField();
bfColumn.DataField = dtblDataSource.Columns[i].ColumnName;
bfColumn.HeaderText = dtblDataSource.Columns[i].Caption;
gdv.Columns.Add(bfColumn);
}

gdv.Columns[1].Visible = false;

CommandField cfModify = new CommandField(); //绑定命令列
cfModify.ButtonType = ButtonType.Button;
cfModify.SelectText = "修改";
cfModify.ShowSelectButton = true;
gdv.Columns.Add(cfModify);

gdv.DataBind();
}

在程序中,只要调用这个方法就可以啦。

回答2:

再查询按钮下写代码:
HyperLinkField newlink = (HyperLinkField)GridView1.Columns[连接索引];
newlink.DataNavigateUrlFormatString = "B.aspx?id={0}";