1

データベースから取得したレコードを gridview に表示しようとしていますが、取得したデータを grid_itemdatabound でバインドできません。

データベースからレコードを取得した後、if 条件の中に入ることができません。 if 条件が false の "e.Item is GridDataItem" のように発生しています。何か提案はありますか??

ここに問題が発生している.aspxコードがあります。

private void RadGrid_Itemdatabound(object sender, Telerik.Web.UI.GridItemEventArgs e)
{

    if ((e.Item is GridDataItem)) 
    {
        lblMessage.Text = "SOME TEXT TO BE PRNTED";
    }
}
4

1 に答える 1

0

Itemdataboundイベントには、 などの他のタイプのアイテムも含まれGridHeaderItemます。

たとえば、 is の場合e.Itemはfalse になりますGridHeaderIteme.Item is GridDataItem

さらに、アイテム内のコントロールにアクセスする場合は、適切なコントロール タイプにキャストする必要があります。

例えば、

private void RadGrid_Itemdatabound(object sender, GridItemEventArgs e)
{
   if (e.Item is GridDataItem) 
   {
      var item = (GridDataItem) e.Item;
      var user= (User) e.Item.DataItem; // Cast to appropriate object
      var lblMessage = (Label) item.FindControl("lblMessage");
      lblMessage.Text = user.FirstName;
   }
}
于 2013-03-29T20:04:36.923 に答える