private DataTable DT = new DataTable();
private DataSet DS = new DataSet();
private void Form1_Load(object sender, System.EventArgs e)
{
//データセットを手動で作成します
DT = DS.Tables.Add("SampleTable");
DT.Columns.AddRange(new DataColumn[] {
new DataColumn("ID", Type.GetType("System.Int32")),
new DataColumn("Text", Type.GetType("System.String")),
new DataColumn("Check", Type.GetType("System.Boolean"))
});
DT.Rows.Add(new object[] {10, "Text-10", true});
DT.Rows.Add(new object[] {20, "Text-20", false});
DT.Rows.Add(new object[] {30, "Text-30", false});
DT.Rows.Add(new object[] {40, "Text-40", true});
DT.Rows.Add(new object[] {50, "text-50", true});
//データセットを接続します
fpSpread1.DataSource = DS;
}
private void button1_Click(object sender, System.EventArgs e)
{
//最終行の後に非連結行を追加します
fpSpread1.ActiveSheet.AddUnboundRows(fpSpread1.ActiveSheet.RowCount, 1);
//データを設定します
fpSpread1.ActiveSheet.SetValue(fpSpread1.ActiveSheet.RowCount - 1, 0, 100);
fpSpread1.ActiveSheet.SetValue(fpSpread1.ActiveSheet.RowCount - 1, 1, "Text-New");
fpSpread1.ActiveSheet.SetValue(fpSpread1.ActiveSheet.RowCount - 1, 2, true);
fpSpread1.ActiveSheet.Rows[fpSpread1.ActiveSheet.RowCount - 1].BackColor = Color.LightPink;
}
private void button2_Click(object sender, System.EventArgs e)
{
Console.WriteLine("追加前のデータソース全行数:" + DT.Rows.Count.ToString());
for (int i = 0; i < fpSpread1.ActiveSheet.RowCount; i++)
{
if (fpSpread1.ActiveSheet.IsRowBound(i) != true)
//非連結行のみをデーターソースに追加します
fpSpread1.ActiveSheet.AddRowToDataSource(i, true);
}
Console.WriteLine("追加後のデータソース全行数:" + DT.Rows.Count.ToString());
Console.WriteLine("データソースの最終行のTextフィールドの値は:" + DT.Rows[DT.Rows.Count - 1][1]);
}
Dim DT As New DataTable
Dim DS As New DataSet
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
'データセットを作成します
DT = DS.Tables.Add("SampleTable")
DT.Columns.AddRange(New DataColumn() { _
New DataColumn("ID", Type.GetType("System.Int32")), _
New DataColumn("Text", Type.GetType("System.String")), _
New DataColumn("Check", Type.GetType("System.Boolean")) _
})
DT.Rows.Add(New Object() {10, "Text-10", True})
DT.Rows.Add(New Object() {20, "Text-20", False})
DT.Rows.Add(New Object() {30, "Text-30", False})
DT.Rows.Add(New Object() {40, "Text-40", True})
DT.Rows.Add(New Object() {50, "Text-50", True})
'データセットを接続します
FpSpread1.DataSource = DS
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'最終行の後に非連結行を追加します
FpSpread1.ActiveSheet.AddUnboundRows(FpSpread1.ActiveSheet.RowCount, 1)
'データを設定します
FpSpread1.ActiveSheet.SetValue(FpSpread1.ActiveSheet.RowCount - 1, 0, 100)
FpSpread1.ActiveSheet.SetValue(FpSpread1.ActiveSheet.RowCount - 1, 1, "Text-New")
FpSpread1.ActiveSheet.SetValue(FpSpread1.ActiveSheet.RowCount - 1, 2, True)
FpSpread1.ActiveSheet.Rows(FpSpread1.ActiveSheet.RowCount - 1).BackColor = Color.LightPink
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Console.WriteLine("追加前のデータソース全行数:" + DT.Rows.Count.ToString)
For i As Integer = 0 To FpSpread1.ActiveSheet.RowCount - 1
If Not FpSpread1.ActiveSheet.IsRowBound(i) Then
'非連結行のみをデーターソースに追加します
FpSpread1.ActiveSheet.AddRowToDataSource(i, True)
End If
Next
Console.WriteLine("追加後のデータソース全行数:" + DT.Rows.Count.ToString)
Console.WriteLine("データソースの最終行のTextフィールドの値は:" + DT.Rows(DT.Rows.Count - 1)(1))
End Sub