2012-10-31 41 views
1

我正在使用Telerik rad網格控件,它綁定到後面的代碼中的數據表。 我想在運行時將每個單元格更改爲超鏈接字段並配置NavigateUrl。當我點擊每一行時,會顯示一個新頁面。我怎樣才能做到這一點?RadGrid超鏈接列在運行時

回答

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); 
    } 
}