0

グリッドビューにある「LeadTime」の最高値を赤に設定したいと考えています。

 If e.Row.RowType = DataControlRowType.DataRow Then
            Dim LeadTime As Integer = Convert.ToInt32(DataBinder.Eval(e.Row.DataItem, "LeadTime"))
            If LeadTime > 0 Then
                e.Row.ForeColor = System.Drawing.Color.Blue
       End If
End If
4

2 に答える 2

1

まず、グリッド ビューのすべての行を反復処理して、次のようなリード タイムの最大値を見つける必要があります。

int maxLeadTime=0;
int maxRowIndex=0;
for(int i=0;i<yourGv.Rows.Count;i++)
{
    int currentLeadTime =Convert.ToInt32(yourGv.Rows[i].FindControl("idOfControlStoresLeadTime").ToString());
    if(maxLeadTime<currentLeadTime)
    {
        maxLeadTime=currentLeadTime;
        maxRowIndex=i;
    }
}

次を使用して、その行の forcolor を設定できるようになりました。

yourGv.Rows[maxRowIndex].ForeColor = System.Drawing.Color.Red;

上記のソリューションは、リード タイムの最大値の前の色を赤に設定します。

于 2012-07-19T06:13:55.987 に答える
0

これには多くの方法があります。最も単純なもの (私が思うに) は、max(LeadTime) の行のインデックスを取得することです。

gridView1.Rows(obtainedRowIndex).ForeColor=System.Drawing.Color.Blue
于 2012-07-19T03:11:12.273 に答える