This is a migrated thread and some comments may be shown as answers.

Column Text in RadGrid

3 Answers 268 Views
Grid
This is a migrated thread and some comments may be shown as answers.
bharat kumar
Top achievements
Rank 1
bharat kumar asked on 06 Dec 2010, 04:36 PM
Hi ,

i am using radgrid control on my page and i want to get the text of the hyperlink column in view mode.
i am getting the control and all its property but not the text property of hyperlink control.

private void grid_ItemDataBound(object sender, GridItemEventArgs e)
{
if (e.Item is GridEditableItem && e.Item.IsInEditMode)
{
}
else
{
string tasknumber = ((GridHyperLinkColumn)((RadGrid)sender).MasterTableView.DetailTables[0].Columns[6]).Text;
((GridHyperLinkColumn)((RadGrid)sender).MasterTableView.DetailTables[0].Columns[6]).DataNavigateUrlFormatString = "../AIPSTaskSelector.aspx?SubActionId={0}&disableMaster=1&read=true";
}
}

how to get the text here...
string tasknumber = ((GridHyperLinkColumn)((RadGrid)sender).MasterTableView.DetailTables[0].Columns[6]).Text;

here in string tasknumber is empty.

Please help.

3 Answers, 1 is accepted

Sort by
0
Princy
Top achievements
Rank 2
answered on 07 Dec 2010, 05:53 AM
Hello Bharat,

I guess the GridHyperLinkColumn is within Detail table. Check out the following code snippet which shows how to access the Text in GridhyperLinkColumn.

ASPX:
<telerik:RadGrid . . . .>
  <DetailTables>
    <telerik:GridTableView Name="GridTableView1" runat="server">
      <Columns>
         <telerik:GridHyperLinkColumn DataTextField="FirstName"
           DataNavigateUrlFields="EmployeeID" UniqueName="GridHyperLinkColumn">
         </telerik:GridHyperLinkColumn>
      </Columns>
     </telerik:GridTableView>
   </DetailTables>
 </MasterTableView>
</telerik:RadGrid>

C#:
protected void RadGrid1_ItemDataBound(object sender, GridItemEventArgs e)
   {
       if (e.Item is GridDataItem && e.Item.OwnerTableView.Name == "Detail2")
       {
           GridDataItem item = (GridDataItem)e.Item;
           HyperLink link = (HyperLink)item["GridHyperLinkColumn"].Controls[0];// accessing HyperLink using ColumnUniqueName
           string colText= link.Text; //accessing HyperLinkColumn text
       }
   }

Thanks,
Princy.
0
bharat kumar
Top achievements
Rank 1
answered on 07 Dec 2010, 10:20 AM
Hi Princy,

thanks for your reply.
but i couldn't able to get the text from above code.
my grid is created dynamicaly and there is empty string in e.Item.OwnerTableView.Name.
please suggest.






0
Princy
Top achievements
Rank 2
answered on 08 Dec 2010, 08:01 AM
Hello Bharat,

There are cases in which you may want to distinguish grid rows in hierarchy on ItemCreated/ItemDataBound event. In that case one option is setting name for Master and Detail table. Or you can try any approach in the following documentation.
Distinguish grid rows in hierarchy on ItemCreated/ItemDataBound

And you are getting e.Item.OwnerTableView.Name as empty string because you didn't set Name for DetailTable. Please take a look at the following code snippet which shows how to set name for DetailTable when it is created dynamically.

C#:
//creating Detail table dynamically
 GridTableView tableViewOrders = new GridTableView(RadGrid1);
 tableViewOrders.Name = "GridTableView1"; // setting name for DetailTable

Thanks,
Princy.
Tags
Grid
Asked by
bharat kumar
Top achievements
Rank 1
Answers by
Princy
Top achievements
Rank 2
bharat kumar
Top achievements
Rank 1
Share this question
or