5

我想访问 radGrid 控件中的值。鉴于下图,我想访问“状态”的值。但我似乎无法得到它。

我收到一条错误消息

“无法将 'TripLeg' 类型的对象转换为 'Telerik.Web.UI.GridDataItem'。”

任何想法如何访问该列?

网格项

4

2 回答 2

4

你快到了。您只需要转换DataItem为适当的对象。假设您的数据源是IEnumerable<TripLeg>.

这是一个例子 -

if (e.Item is GridDataItem)
{
   var item = e.Item as GridDataItem;
   var tripLeg = e.Item.DataItem as TripLeg; // Cast to appropriate object
   var status = tripLeg.Status; 

   // var hLink = (HyperLink) item.FindControl("HyperLink1");
   // Above code will throw exception if the control is not found.

   var hLink = item.FindControl("XXXXX") as HyperLink;
   if(hLink != null)
   {
      hLink.Attributes.Add("XXXXX", "XXXXX");
   }
}
于 2013-05-10T23:01:29.267 回答
3

我非常喜欢 Telerik Components(尽管我越来越喜欢 Kendo UI),但在我看来,如果你想获得状态的价值,你可以使用它

string itemValue = dataItem["ColumnUniqueName"].Text;
//no need to convert :)

查看 RadGrids 的文档... http://www.telerik.com/help/aspnet-ajax/grid-accessing-cells-and-rows.html

于 2013-05-10T23:44:18.937 回答