RadGrid超链接列在运行时

时间:2012-10-31 05:35:00

标签: c# datatable telerik radgrid

我正在使用Telerik rad Grid控件,它被绑定到后面的代码中的数据表。 我想在运行时将每个单元格更改为超链接字段并配置NavigateUrl。当我点击每一行时,会显示一个新页面。我怎么能这样做?

1 个答案:

答案 0 :(得分:2)

请尝试使用以下代码段。

<强>的.aspx

<telerik:RadGrid ID="RadGrid2" runat="server" 
    onneeddatasource="RadGrid2_NeedDataSource" 
    onitemdatabound="RadGrid2_ItemDataBound">
</telerik:RadGrid>

<强> .aspx.cs

protected void RadGrid2_NeedDataSource(object sender, GridNeedDataSourceEventArgs e)
{
    DataTable dt = new DataTable();
    dt.Columns.Add("Shipper", typeof(string));
    dt.Rows.Add("Shipper1");
    dt.Rows.Add("Shipper2");
    dt.Rows.Add("Shipper3");

    RadGrid2.DataSource = dt;
}

protected void RadGrid2_ItemDataBound(object sender, GridItemEventArgs e)
{
    if (e.Item is GridDataItem)
    {
        GridDataItem item = e.Item as GridDataItem;
        TableCell tb = item["Shipper"];
        HyperLink lnk = new HyperLink();
        lnk.ID = "lnk";
        lnk.Text = (item.DataItem as DataRowView)["Shipper"].ToString();
        lnk.NavigateUrl = "https://www.google.co.in/";
        tb.Controls.Clear();
        tb.Controls.Add(lnk);
    }
}