2014-01-20 49 views
0

嗨我很新來C#。但我有這個網頁列表打印出一些結果,我試圖改變,我想要做的是做一個if聲明。如果行[4]小於[2],那麼該行應該是紅色的。我試圖複製一些代碼。根據條件在C#中更改行顏色

//##############Print result############## 
foreach (string[] row in dataResult) 
{ 
//Birn.Util.cellDecimalPrinter(row[0],"#,0.0") 
//<tr id="PopUp" onclick="OpenWindow('file.aspx?querystr=row[0]&date=textbox.text','500','300')"> 
%> 
<tr> 
<td><%=row[0]%></td> 
<td><%=row[1]%></td> 
<td><%=row[2]%></td> 
<td><%=row[3]%></td> 
<td><%=row[4]%></td> 
</tr> 
<% 
} 

回答

0

您可以使用CSS更改行的樣式。我假設,無論你在行2和4相比是一個小數的字符串表示:如果需要調整Convert.ToDecimal爲適當的類型:

foreach (string[] row in dataResult) 
{ 
    string redStyle= ""; 
    If (Convert.ToDecimal(row[4]) < Convert.ToDecimal(row[2])) { 
     // ideally you would have a style defined in a separate CSS file for this 
     redStyle = " style=\"background-color: Red; color: White\""; 
    } 
} 
%> 
<tr<%=redStyle%>> 
<td><%=row[0]%></td> 
<td><%=row[1]%></td> 
<td><%=row[2]%></td> 
<td><%=row[3]%></td> 
<td><%=row[4]%></td> 
</tr> 
<% 
} 
+0

非常感謝安德魯你是一個生命的救星:)我一直添加它幾天,當我看到解決方案它非常簡單:)但非常感謝 – user3216290

+0

訣竅是想想如何結合編程的不同部分來獲得您想要的結果:一點點的CSS來修改行,以及有點C#來根據需要應用CSS。另外,我建議你考慮使用[Code-Behind Page Model](http://msdn.microsoft.com/en-us/library/015103yb%28v=vs.100%29.ASPX),因爲它可以使它更容易看到發生了什麼:爲了或開始,你可以擺脫那些讓人眼花繚亂的構造。 –