作成日: 2023/03/09 最終更新日: 2023/03/09
文書種別
使用方法
詳細
ノードの背景色を設定するには、行のStyleNewのBackColorプロパティを使用します。
以下に、ノードをレベルごとに色分けし、さらにグリッド全体のヘッダーにも色を設定するサンプルコードを記載します。

◎サンプルコード(VB)
以下に、ノードをレベルごとに色分けし、さらにグリッド全体のヘッダーにも色を設定するサンプルコードを記載します。
◎サンプルコード(VB)
Imports C1.Win.C1FlexGrid
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' グリッド全体のヘッダーの色を設定
' ----(1) C1FlexGridのFixedスタイルを使用----
C1FlexGrid1.Styles.Fixed.BackColor = Color.LightSteelBlue
'' ----(2) 行のStyleFixedNewを使用----
'C1FlexGrid1.Rows(0).StyleNew.BackColor = Color.LightSteelBlue
'For i As Integer = 0 To C1FlexGrid1.Rows.Count - 1
' C1FlexGrid1.Rows(i).StyleFixedNew.BackColor = Color.LightSteelBlue
'Next
' データの設定
C1FlexGrid1.Cols.Fixed = 1
C1FlexGrid1.Rows.Count = 13
C1FlexGrid1.Cols.Count = 4
C1FlexGrid1(1, 1) = "階層レベル0"
C1FlexGrid1(2, 1) = "階層レベル1"
C1FlexGrid1(3, 1) = "階層レベル2"
C1FlexGrid1(4, 1) = "階層レベル0"
C1FlexGrid1(5, 1) = "D1"
C1FlexGrid1(6, 1) = "D2"
C1FlexGrid1(7, 1) = "階層レベル1"
C1FlexGrid1(8, 1) = "E1"
C1FlexGrid1(9, 1) = "E2"
C1FlexGrid1(10, 1) = "階層レベル2"
C1FlexGrid1(11, 1) = "F1"
C1FlexGrid1(12, 1) = "F2"
' 通常行をノード行に変更
C1FlexGrid1.Rows(1).IsNode = True
C1FlexGrid1.Rows(1).Node.Level = 0
C1FlexGrid1.Rows(2).IsNode = True
C1FlexGrid1.Rows(2).Node.Level = 1
C1FlexGrid1.Rows(3).IsNode = True
C1FlexGrid1.Rows(3).Node.Level = 2
C1FlexGrid1.Rows(4).IsNode = True
C1FlexGrid1.Rows(4).Node.Level = 0
C1FlexGrid1.Rows(7).IsNode = True
C1FlexGrid1.Rows(7).Node.Level = 1
C1FlexGrid1.Rows(10).IsNode = True
C1FlexGrid1.Rows(10).Node.Level = 2
C1FlexGrid1.AutoSizeCol(0)
' アウトラインツリーの設定
C1FlexGrid1.Tree.Column = 1
C1FlexGrid1.Tree.Style = TreeStyleFlags.SimpleLeaf
' ノードの背景色の設定
C1FlexGrid1.Rows(1).StyleNew.BackColor = Color.LightSeaGreen
C1FlexGrid1.Rows(2).StyleNew.BackColor = Color.LightGreen
C1FlexGrid1.Rows(3).StyleNew.BackColor = Color.LightCyan
C1FlexGrid1.Rows(4).StyleNew.BackColor = Color.LightSeaGreen
C1FlexGrid1.Rows(7).StyleNew.BackColor = Color.LightGreen
C1FlexGrid1.Rows(10).StyleNew.BackColor = Color.LightCyan
End Sub
End Class
◎サンプルコード(C#)
using C1.Win.C1FlexGrid;
namespace prj_C1FlexGrid
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
// グリッド全体のヘッダーの色を設定
// ----(1) C1FlexGridのFixedスタイルを使用----
c1FlexGrid1.Styles.Fixed.BackColor = Color.LightSteelBlue;
// ----(2) 行のStyleFixedNewを使用----
//c1FlexGrid1.Rows[0].StyleNew.BackColor = Color.LightSteelBlue;
//for (int i = 0; i < c1FlexGrid1.Rows.Count; i++)
//{
// c1FlexGrid1.Rows[i].StyleFixedNew.BackColor = Color.LightSteelBlue;
//}
// データの設定
c1FlexGrid1.Cols.Fixed = 1;
c1FlexGrid1.Rows.Count = 13;
c1FlexGrid1.Cols.Count = 4;
c1FlexGrid1[1, 1] = "階層レベル0";
c1FlexGrid1[2, 1] = "階層レベル1";
c1FlexGrid1[3, 1] = "階層レベル2";
c1FlexGrid1[4, 1] = "階層レベル0";
c1FlexGrid1[5, 1] = "D1";
c1FlexGrid1[6, 1] = "D2";
c1FlexGrid1[7, 1] = "階層レベル1";
c1FlexGrid1[8, 1] = "E1";
c1FlexGrid1[9, 1] = "E2";
c1FlexGrid1[10, 1] = "階層レベル2";
c1FlexGrid1[11, 1] = "F1";
c1FlexGrid1[12, 1] = "F2";
// 通常行をノード行に変更
c1FlexGrid1.Rows[1].IsNode = true;
c1FlexGrid1.Rows[1].Node.Level = 0;
c1FlexGrid1.Rows[2].IsNode = true;
c1FlexGrid1.Rows[2].Node.Level = 1;
c1FlexGrid1.Rows[3].IsNode = true;
c1FlexGrid1.Rows[3].Node.Level = 2;
c1FlexGrid1.Rows[4].IsNode = true;
c1FlexGrid1.Rows[4].Node.Level = 0;
c1FlexGrid1.Rows[7].IsNode = true;
c1FlexGrid1.Rows[7].Node.Level = 1;
c1FlexGrid1.Rows[10].IsNode = true;
c1FlexGrid1.Rows[10].Node.Level = 2;
c1FlexGrid1.AutoSizeCol(0);
// アウトラインツリーの設定
c1FlexGrid1.Tree.Column = 1;
c1FlexGrid1.Tree.Style = TreeStyleFlags.SimpleLeaf;
// ノードの背景色の設定
c1FlexGrid1.Rows[1].StyleNew.BackColor = Color.LightSeaGreen;
c1FlexGrid1.Rows[2].StyleNew.BackColor = Color.LightGreen;
c1FlexGrid1.Rows[3].StyleNew.BackColor = Color.LightCyan;
c1FlexGrid1.Rows[4].StyleNew.BackColor = Color.LightSeaGreen;
c1FlexGrid1.Rows[7].StyleNew.BackColor = Color.LightGreen;
c1FlexGrid1.Rows[10].StyleNew.BackColor = Color.LightCyan;
}
}
}