如何在gridview中应用这样的颜色逻辑?
我正在构建一个gridview,gridview项源包含索引值和其他数据。我知道我可以通过如何在gridview中应用这样的颜色逻辑?,gridview,windows-8,windows-runtime,microsoft-metro,Gridview,Windows 8,Windows Runtime,Microsoft Metro,我正在构建一个gridview,gridview项源包含索引值和其他数据。我知道我可以通过IValueConverter将背景与索引属性绑定来应用背景,但我需要逻辑。我想要下面给出的gridview int i=0; protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) { if (i == 0) { e.Row.Cells[0].BackColor = Syste
IValueConverter
将背景与索引属性绑定来应用背景,但我需要逻辑。我想要下面给出的gridview
int i=0;
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (i == 0)
{
e.Row.Cells[0].BackColor = System.Drawing.Color.Purple;
e.Row.Cells[1].BackColor = System.Drawing.Color.Green;
e.Row.Cells[2].BackColor = System.Drawing.Color.Red;
i++;
}
else if (i == 1)
{
e.Row.Cells[0].BackColor = System.Drawing.Color.Green;
e.Row.Cells[1].BackColor = System.Drawing.Color.Red;
e.Row.Cells[2].BackColor = System.Drawing.Color.Purple;
i++;
}
else if (i == 2)
{
e.Row.Cells[0].BackColor = System.Drawing.Color.Red;
e.Row.Cells[1].BackColor = System.Drawing.Color.Purple;
e.Row.Cells[2].BackColor = System.Drawing.Color.Green;
i = 0;
}
}
我自己终于找到了解决办法:)
这不适用于我,因为我使用的是Windows 8应用程序的
GridView
而不是ASP.NETGridView
。
public class IndexToColorConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, string language)
{
SolidColorBrush _color = null;
int _val = (int)value % 9;
switch (_val)
{
case 1:
case 3:
case 8:
_color = App.Current.Resources["GreenBrush"] as SolidColorBrush;
break;
case 0:
case 5:
case 7:
_color = App.Current.Resources["OrangeBrush"] as SolidColorBrush;
break;
case 2:
case 4:
case 6:
_color = App.Current.Resources["PurpleBrush"] as SolidColorBrush;
break;
}
return _color;
}
public object ConvertBack(object value, Type targetType, object parameter, string language)
{
throw new NotImplementedException();
}
}