0

セルの色を変更する必要があります-これは日付に依存します-セルの色を変更できますここでは問題ありません

        GridDataItem item = e.Item as GridDataItem;

        **if ((item["run_Date"].Text > DateTime.Now))** //error is in this line of code
        {
            foreach (GridColumn col in radgrdResultDetail.MasterTableView.Columns)
            {
                item["run_Date"].BackColor = Color.FromArgb(255, 106, 106);

            }
        }

ただし、「日付」にアクセスしようとしています-エラーが発生しているため、e.itemの画像を添付しました

ここに画像の説明を入力

4

2 に答える 2

1

表示される正確なエラー メッセージは何ですか? String cell.Text を DateTime オブジェクト DateTime.Now と比較しているため、無効なキャスト例外が発生していると思います。次のように、テキストを日時オブジェクトに変換してみてください。

if(DateTime.Compare(Convert.ToDateTime(item["run_date"].Text), DateTime.Now) > 0)

または、オブジェクトを返すと思われるセル自体を見て、それをdatetimeオブジェクトにキャストします

if(DateTime.Compare((DateTime)item["run_date"], DateTime.Now) > 0)
于 2012-06-12T14:33:23.610 に答える
1

これを試して

protected void RadGrid1_ItemDataBound(object sender, Telerik.Web.UI.GridItemEventArgs e)
{
    //Is it a GridDataItem
    if (e.Item is GridDataItem)
    {
        //Get the instance of the right type
        GridDataItem item= e.Item as GridDataItem;

        //Check the formatting condition
        if(DateTime.Compare(Convert.ToDateTime(item["run_date"].Text), DateTime.Now) > 0)
        {
            item["run_Date"].BackColor = Color.FromArgb(255, 106, 106);
            //Customize more...
        }
    }
}

参照:
ItemDataBound の行/セルの条件付き書式
指定された条件で RadGrid の行の色を変更するには?

于 2012-06-12T14:51:24.790 に答える