次のサンプルコードは、条件付きセルスタイルを実装する方法を示します。値が5未満の場合、セルの背景は緑で描画されます。値が5~8の場合は黄色で描画されます。値が8より大きい場合は赤で描画されます。このサンプルコードは、
ConditionalCellStyleクラスに示されている詳細なコード例の一部を抜粋したものです。
private void Form1_Load(object sender, EventArgs e)
{
Template template1 = Template.CreateGridTemplate(10, 50, 21);
CellStyle cellStyle1 = new CellStyle();
cellStyle1.BackColor = Color.Lime;
CellStyle cellStyle2 = new CellStyle();
cellStyle2.BackColor = Color.Yellow;
CellStyle cellStyle3 = new CellStyle();
cellStyle3.BackColor = Color.Red;
//If the cell's value is less than 5, the background will painted to green color
ConditionalCellStyleItem item1 = new ConditionalCellStyleItem(cellStyle1, ConditionalCellStyleOperator.LessThan, 5);
//If the cell's value is between 5 and 8, the background will painted to yellow color
ConditionalCellStyleItem item2 = new ConditionalCellStyleItem(cellStyle2, ConditionalCellStyleOperator.Between, 5, 8);
//If the cell's value is greater than 8, the background will painted to red color
ConditionalCellStyleItem item3 = new ConditionalCellStyleItem(cellStyle3, ConditionalCellStyleOperator.GreaterThan, 8);
//Create one ConditionalCellStyle with three items.
ConditionalCellStyle conditionalStyle1 = new ConditionalCellStyle();
conditionalStyle1.Items.AddRange(new ConditionalCellStyleItem[] { item1, item2, item3 });
for (int i = 0; i < template1.Row.Cells.Count - 1; i++)
{
template1.Row.Cells[i].Style = conditionalStyle1;
template1.Row.Cells[i].Value = i + 1;
template1.Row.Cells[i].ValueType = typeof(Int32);
}
gcMultiRow1.Template = template1;
gcMultiRow1.RowCount = 5;
}
Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
Dim template1 As Template = Template.CreateGridTemplate(10, 50, 21)
Dim cellStyle1 As New CellStyle()
cellStyle1.BackColor = Color.Lime
Dim cellStyle2 As New CellStyle()
cellStyle2.BackColor = Color.Yellow
Dim cellStyle3 As New CellStyle()
cellStyle3.BackColor = Color.Red
'If the cell's value is less than 5, the background will painted to green color
Dim item1 As New ConditionalCellStyleItem(cellStyle1, ConditionalCellStyleOperator.LessThan, 5)
'If the cell's value is between 5 and 8, the background will painted to yellow color
Dim item2 As New ConditionalCellStyleItem(cellStyle2, ConditionalCellStyleOperator.Between, 5, 8)
'If the cell's value is greater than 8, the background will painted to red color
Dim item3 As New ConditionalCellStyleItem(cellStyle3, ConditionalCellStyleOperator.GreaterThan, 8)
'Create one ConditionalCellStyle with three items.
Dim conditionalStyle1 As New ConditionalCellStyle()
conditionalStyle1.Items.AddRange(New ConditionalCellStyleItem() {item1, item2, item3})
For i As Integer = 0 To template1.Row.Cells.Count - 2
template1.Row.Cells(i).Style = conditionalStyle1
template1.Row.Cells(i).Value = i + 1
template1.Row.Cells(i).ValueType = GetType(Int32)
Next
gcMultiRow1.Template = template1
gcMultiRow1.RowCount = 5
End Sub
System.Object
System.ValueType
System.Enum
GrapeCity.Win.MultiRow.ConditionalCellStyleOperator