作成日: 2019/01/25 最終更新日: 2019/01/25
文書種別
使用方法
詳細
C1FlexGridコントロールでは、AllowAddNewプロパティをTrueに設定すると、グリッドの最下部に新規追加行が自動表示され、ここにデータを入力すると行が追加されます。このAllowAddNewプロパティをFalseに設定し、RowsオブジェクトのAddメソッドを使用して、動的に新規行を追加することもできます。
また、RowsオブジェクトのInsertメソッドを使用すると、任意の行の前に動的に新規行を挿入できます。
以下に、ボタンクリック時に新規行を追加し、マウスの右クリック時に現在のセルの前に行を挿入するサンプルをご紹介します。
◎サンプルコード(VB)
◎サンプルコード(C#)
また、RowsオブジェクトのInsertメソッドを使用すると、任意の行の前に動的に新規行を挿入できます。
以下に、ボタンクリック時に新規行を追加し、マウスの右クリック時に現在のセルの前に行を挿入するサンプルをご紹介します。
◎サンプルコード(VB)
Dim rowMouse As Integer = 0
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim r, c As Integer
For r = 1 To C1FlexGrid1.Rows.Count - 1
For c = 1 To C1FlexGrid1.Cols.Count - 1
C1FlexGrid1(r, c) = "cell " + r.ToString() + "/" + c.ToString()
Next
Next
C1FlexGrid1.Rows.Count = 10
C1FlexGrid1.AllowAddNew = False
End Sub
Private Sub C1FlexGrid1_MouseEnterCell(sender As Object, e As C1.Win.C1FlexGrid.RowColEventArgs) Handles C1FlexGrid1.MouseEnterCell
rowMouse = e.Row
End Sub
Private Sub C1FlexGrid1_MouseDown(sender As Object, e As MouseEventArgs) Handles C1FlexGrid1.MouseDown
If (e.Button = MouseButtons.Right) Then
C1FlexGrid1.Rows.Insert(rowMouse)
End If
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
C1FlexGrid1.Rows.Add()
End Sub
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim r, c As Integer
For r = 1 To C1FlexGrid1.Rows.Count - 1
For c = 1 To C1FlexGrid1.Cols.Count - 1
C1FlexGrid1(r, c) = "cell " + r.ToString() + "/" + c.ToString()
Next
Next
C1FlexGrid1.Rows.Count = 10
C1FlexGrid1.AllowAddNew = False
End Sub
Private Sub C1FlexGrid1_MouseEnterCell(sender As Object, e As C1.Win.C1FlexGrid.RowColEventArgs) Handles C1FlexGrid1.MouseEnterCell
rowMouse = e.Row
End Sub
Private Sub C1FlexGrid1_MouseDown(sender As Object, e As MouseEventArgs) Handles C1FlexGrid1.MouseDown
If (e.Button = MouseButtons.Right) Then
C1FlexGrid1.Rows.Insert(rowMouse)
End If
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
C1FlexGrid1.Rows.Add()
End Sub
◎サンプルコード(C#)
nt rowMouse = 0;
public Form1()
{
InitializeComponent();
for (int r = 1; r < c1FlexGrid1.Rows.Count; r++)
{
for (int c =0; c< c1FlexGrid1.Cols.Count; c++)
{
c1FlexGrid1[r, c] = "cell " + r + "/" + c;
c1FlexGrid2[r, c] = "cell " + r + "/" + c;
}
}
c1FlexGrid1.Rows.Count = 10;
c1FlexGrid1.AllowAddNew = false;
}
private void c1FlexGrid1_MouseEnterCell(object sender, C1.Win.C1FlexGrid.RowColEventArgs e)
{
rowMouse = e.Row;
}
private void c1FlexGrid1_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Right)
{
c1FlexGrid1.Rows.Insert(rowMouse);
}
}
private void buttonAddRow_Click(object sender, EventArgs e)
{
c1FlexGrid1.Rows.Add();
}
public Form1()
{
InitializeComponent();
for (int r = 1; r < c1FlexGrid1.Rows.Count; r++)
{
for (int c =0; c< c1FlexGrid1.Cols.Count; c++)
{
c1FlexGrid1[r, c] = "cell " + r + "/" + c;
c1FlexGrid2[r, c] = "cell " + r + "/" + c;
}
}
c1FlexGrid1.Rows.Count = 10;
c1FlexGrid1.AllowAddNew = false;
}
private void c1FlexGrid1_MouseEnterCell(object sender, C1.Win.C1FlexGrid.RowColEventArgs e)
{
rowMouse = e.Row;
}
private void c1FlexGrid1_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Right)
{
c1FlexGrid1.Rows.Insert(rowMouse);
}
}
private void buttonAddRow_Click(object sender, EventArgs e)
{
c1FlexGrid1.Rows.Add();
}
関連情報
旧文書番号
83570