我有一个从数据库填充的 GridView 。
我需要这样做,以便特定列中的每个单元格在单击时都将链接到第二页并将单元格的文本值作为查询字符串传递(即链接到 http://mysite.com/page.aspx?CellText= 'blah blah blah' )。听起来很简单,我知道,但我就是不明白!
这就是我的页面目前的样子:
<asp:GridView id="gdvTargets"
runat="server"
AutoGenerateEditButton="true"
OnRowEditing="gdvTargets_RowEdit"
OnRowUpdating="gdvTargets_RowUpdating"
OnRowUpdated="gdvTargets_RowUpdated"
OnRowCancelingEdit="gdvTargets_RowCancelingEdit"
cssClass="grid"
>
<HeaderStyle CssClass="GridHeader"></HeaderStyle>
以及我背后的 C# 代码:
protected void Page_Load(object sender, EventArgs e)
{
year = Request.QueryString["YearSelector"];
targetType = Request.QueryString["TargetType"];
gdvTargets.DataSource = this.Ets.Api.Util.Db.GetDataTable("EXEC sp_getTargets " + year + ", " + targetType).Return;
gdvTargets.DataBind();
}
这会产生一个看起来像这样的表格:
ID System Target 1 Target 2 Target3 Target 4
0 ALL 10 20 15 10
2 Machine1 4 7 7 7
5 Xfgb 45 6 13 8 3
我希望系统列可单击并链接到新页面,但带有系统名称。希望这是有道理的!感谢您的帮助:D
最佳答案
您可以执行以下操作:
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
e.Row.Cells[0].Text = "<a href=''>" + e.Row.Cells[0].Text + "</a>";
}
将 0 替换为您的列索引
关于C# GridViews - 单击时使一列中的单元格链接到另一页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12692010/