作成日: 2023/11/07 最終更新日: 2023/11/09
文書種別
技術情報
詳細
専用の機能はありませんが、IsRowBoundメソッドにより連結されている行かどうかを判断することで新規行であるかを判断することができます。
◎サンプルコード(VB)
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' データの作成
Dim dt As New DataTable()
With dt
.Columns.AddRange({New DataColumn("A"), New DataColumn("B")})
For i = 0 To 4
.Rows.Add($"A{i}", $"B{i}")
Next
.AcceptChanges()
End With
' シートの設定
With FpSpread1.ActiveSheet
.DataAllowAddNew = True
.DataSource = dt
End With
End Sub
Private Sub FpSpread1_EnterCell(sender As Object, e As EnterCellEventArgs) Handles FpSpread1.EnterCell
If e.View.GetSheetView().IsRowBound(e.Row) Then
Console.WriteLine($"{e.Row}:既存行")
Else
Console.WriteLine($"{e.Row}:新規行")
End If
End Sub
◎サンプルコード(C#)
private void Form1_Load(object sender, EventArgs e)
{
var dt = new DataTable();
dt.Columns.AddRange(new[] { new DataColumn("A"), new DataColumn("B") });
for (var i = 0; i <= 4; i++) {
dt.Rows.Add($"A{i}", $"B{i}");
}
dt.AcceptChanges();
// シートの設定
fpSpread1.ActiveSheet.DataAllowAddNew = true;
fpSpread1.ActiveSheet.DataSource = dt;
}
private void fpSpread1_EnterCell(object sender, EnterCellEventArgs e)
{
if (e.View.GetSheetView().IsRowBound(e.Row))
{
Console.WriteLine($"{e.Row}:既存行");
}
else
{
Console.WriteLine($"{e.Row}:新規行");
}
}