繁体   English   中英

如何添加重定向到asp.net行

[英]how to add redirect to asp.net rows

我有这样的网格,

    <asp:GridView ID="pgv" CssClass="Grid" runat="server" ShowHeader="false" AllowPaging="False" OnRowCreated="pgv_RowCreated"></asp:GridView>

这就是我的填充方式

 List<FruitObject> fruitList = new List<FruitObject>();
fruitList = GetFruitNameAndURL();
          pgv.DataSource = fruitList;
                pgv.DataBind();

但是现在,对于每一行水果,我都有一个URL,在单击时,我希望行导航到该URL,无论如何,我可以在页面加载中执行此操作吗?

FruitObject有两个字符串,即Name和URL。

您可以在RowDataBound事件上执行此操作。

将OnRowDataBound属性和处理程序添加到GridView声明中,如下所示:

<asp:GridView ID="pgv" CssClass="Grid" runat="server" 
  ShowHeader="false" 
  AllowPaging="False" 
  OnRowCreated="pgv_RowCreated" 
  OnRowDataBound="pgv_RowDataBound"></asp:GridView>

在页面后面的代码中,添加处理程序

void pgv_RowDataBound(Object sender, GridViewRowEventArgs e)
  {

    if(e.Row.RowType == DataControlRowType.DataRow)
    {
      //get the underlying datasource object for the row
      FruitObject fo = (FruitObject)e.Row.DataItem;
      e.Row.Attributes.Add("onclick", string.Format("window.location = '{0}", fo.URL));
    }

  }

这是假设您的FruitObject具有URL属性。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM