作成日: 2023/11/30 最終更新日: 2023/11/30
文書種別
使用方法
詳細
独自クラスを格納したListコレクションを用いて、チャートを描画することができます。
例えばDigitalDataという名前の独自クラスを用意し、このクラスの値を格納したListをDataSourceプロパティに設定します。このときBindingプロパティには、このList内の項目のプロパティ名を指定する必要があります。

詳細な設定内容は、下記サンプルコードを参照してください。
◎サンプルコード(VB)
例えばDigitalDataという名前の独自クラスを用意し、このクラスの値を格納したListをDataSourceプロパティに設定します。このときBindingプロパティには、このList内の項目のプロパティ名を指定する必要があります。
詳細な設定内容は、下記サンプルコードを参照してください。
◎サンプルコード(VB)
Imports C1.Chart
Imports C1.Win.Chart
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' データの設定
Dim DigitalArray = New List(Of DigitalData)()
Dim rnd = New Random()
For i = 0 To 1
Dim data = New DigitalData()
data.Speed = rnd.Next(1, 19)
Dim list = New List(Of ListItem)()
For j = 0 To 4
list.Add(New ListItem With {
.Item = rnd.Next(1, 99)
})
Next
data.DIList = list
DigitalArray.Add(data)
Next
' チャートの設定
FlexChart1.Series.Clear()
For i = 0 To DigitalArray.Count - 1
Dim di = New Series() With {
.Name = "Series" & i.ToString(),
.Binding = "Item",
.DataSource = DigitalArray(i).DIList,
.ChartType = ChartType.LineSymbols
}
di.Style.StrokeDashPattern = {2.0F, 2.0F}
FlexChart1.Series.Add(di)
Next
End Sub
End Class
' データを保持する独自のクラス
Public Class DigitalData
Public Property Speed As Single
Public Property DIList As List(Of ListItem)
End Class
Public Class ListItem
Public Property Item As Integer
End Class
◎サンプルコード(C#)
using C1.Chart;
using C1.Win.Chart;
namespace prj_C1FlexChart
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
// データの作成
var DigitalArray = new List<DigitalData>();
var rnd = new Random();
for (var i = 0; i < 2; i++)
{
var data = new DigitalData();
data.Speed = rnd.Next(1, 19);
var list = new List<ListItem>();
for (var j = 0; j < 5; j++)
{
list.Add(new ListItem { Item = rnd.Next(1, 99) });
}
data.DIList = list;
DigitalArray.Add(data);
}
// チャートの設定
flexChart1.Series.Clear();
for (var i = 0; i < DigitalArray.Count; i++)
{
var di = new Series()
{
Name = "Series" + i.ToString(),
Binding = "Item",
DataSource = DigitalArray[i].DIList,
ChartType = ChartType.LineSymbols
};
di.Style.StrokeDashPattern = new[] { 2f, 2f };
flexChart1.Series.Add(di);
}
}
}
// データを保持する独自のクラス
public class DigitalData
{
public float Speed { get; set; }
public List<ListItem> DIList { get; set; }
}
public class ListItem
{
public int Item { get; set; }
}
}