1

ここでは、C# グリッド ビューでいくつかのコードを使用しており、値に基づいて別の色にフラグを立てる必要があります。また、赤の背景色の前色を変更して読みやすくしたいと考えています。ばかげた質問かもしれませんが、バックカラーの赤とフォアカラーの白にフラグを立てるコードでこれをどのように達成できますか? いくつかの方法を試しましたが、ここではうまくいきませんでした。どちらでも問題なく動作しますが、ここでは両方を使用したいと思います。

protected void grd_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
        System.Data.DataRow row = ((System.Data.DataRowView)e.Row.DataItem).Row;
        if (row["Qty To Sell"].ToString() == "1")
            e.Row.BackColor = System.Drawing.Color.LightSalmon;
        else if (row["Qty To Sell"].ToString() == "3")
            e.Row.BackColor = System.Drawing.Color.LightSalmon;
        else if (row["Qty To Sell"].ToString() == "2")
            e.Row.BackColor = System.Drawing.Color.LightSalmon;
        else if (row["Qty To Sell"].ToString() == "0")
            e.Row.BackColor = System.Drawing.Color.Red;
4

1 に答える 1

0

これを行うには、ラベル プロパティを使用します。

数値パラメーターを定義します。

int two = 2;
int four = 4;

あなたのラベルを見つけてください:

Label my_label = (Label)row.FindControl("your_label");

そのラベル値を整数に変換します:

int lbl_value = Convert.ToInt32(my_label.Text);

次に、if ステートメントのラベル プロパティを変更します。

if ( lbl_value == two)
    { 
      my_label.BackColor = System.Drawing.Color.White; 
      my_label.Forecolor = System.Drawing.Color.Red;  
     }

等々。行全体ではなく、ラベルのプロパティを変更するだけです。

于 2013-09-23T18:26:11.027 に答える