作成日: 2019/07/12 最終更新日: 2022/02/07
文書種別
使用方法
詳細
FarPoint.Win.Serializer クラスの機能を利用することで、シートのコピーを行うことができます。以下のサンプルコードのように、コピーしたいシートをGetObjectXml メソッドにてシリアライズ化し、SetObjectXmlメソッドにて逆シリアライズ化します。数式を含むシートをコピーする場合には、シートの追加後にLoadFormulasメソッドを呼び出すことで、新しいシートでも数式が有効になります。
※xmlによるシリアライズは、LegacyBehaviorsプロパティがStyleを含む場合にサポートされます。
◎サンプルコード(VB)
◎サンプルコード(C#)
◎サンプルコード(VB)
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim bc As New FarPoint.Win.Spread.CellType.ButtonCellType
bc.Text = "Click!"
FpSpread1.ActiveSheet.Cells(1, 0).CellType = bc
FpSpread1.Sheets(0).Cells(1, 1).Value = "test"
FpSpread1.Sheets(0).Cells(1, 1).BackColor = Color.LavenderBlush
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim NewSheet As New FarPoint.Win.Spread.SheetView
FarPoint.Win.Serializer.SetObjectXml(DirectCast(NewSheet, FarPoint.Win.ISerializeSupport), FarPoint.Win.Serializer.GetObjectXml(DirectCast(FpSpread1.Sheets(0), FarPoint.Win.ISerializeSupport), "temp"), "temp")
NewSheet.SheetName = "NewSheet"
FpSpread1.Sheets.Add(NewSheet)
FpSpread1.LoadFormulas(False)
End Sub
Dim bc As New FarPoint.Win.Spread.CellType.ButtonCellType
bc.Text = "Click!"
FpSpread1.ActiveSheet.Cells(1, 0).CellType = bc
FpSpread1.Sheets(0).Cells(1, 1).Value = "test"
FpSpread1.Sheets(0).Cells(1, 1).BackColor = Color.LavenderBlush
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim NewSheet As New FarPoint.Win.Spread.SheetView
FarPoint.Win.Serializer.SetObjectXml(DirectCast(NewSheet, FarPoint.Win.ISerializeSupport), FarPoint.Win.Serializer.GetObjectXml(DirectCast(FpSpread1.Sheets(0), FarPoint.Win.ISerializeSupport), "temp"), "temp")
NewSheet.SheetName = "NewSheet"
FpSpread1.Sheets.Add(NewSheet)
FpSpread1.LoadFormulas(False)
End Sub
◎サンプルコード(C#)
private void Form1_Load(object sender, EventArgs e)
{
FarPoint.Win.Spread.CellType.ButtonCellType bc = new FarPoint.Win.Spread.CellType.ButtonCellType();
bc.Text = "Click!";
fpSpread1.ActiveSheet.Cells[1, 0].CellType = bc;
fpSpread1.ActiveSheet.Cells[1, 1].Value = "test";
fpSpread1.ActiveSheet.Cells[1, 1].BackColor = Color.LavenderBlush;
}
private void button1_Click(object sender, EventArgs e)
{
FarPoint.Win.Spread.SheetView NewSheet = new FarPoint.Win.Spread.SheetView();
FarPoint.Win.Serializer.SetObjectXml((FarPoint.Win.ISerializeSupport)NewSheet, FarPoint.Win.Serializer.GetObjectXml((FarPoint.Win.ISerializeSupport)fpSpread1.ActiveSheet, "temp"), "temp");
NewSheet.SheetName = "NewSheet";
fpSpread1.Sheets.Add(NewSheet);
fpSpread1.LoadFormulas(false);
}
{
FarPoint.Win.Spread.CellType.ButtonCellType bc = new FarPoint.Win.Spread.CellType.ButtonCellType();
bc.Text = "Click!";
fpSpread1.ActiveSheet.Cells[1, 0].CellType = bc;
fpSpread1.ActiveSheet.Cells[1, 1].Value = "test";
fpSpread1.ActiveSheet.Cells[1, 1].BackColor = Color.LavenderBlush;
}
private void button1_Click(object sender, EventArgs e)
{
FarPoint.Win.Spread.SheetView NewSheet = new FarPoint.Win.Spread.SheetView();
FarPoint.Win.Serializer.SetObjectXml((FarPoint.Win.ISerializeSupport)NewSheet, FarPoint.Win.Serializer.GetObjectXml((FarPoint.Win.ISerializeSupport)fpSpread1.ActiveSheet, "temp"), "temp");
NewSheet.SheetName = "NewSheet";
fpSpread1.Sheets.Add(NewSheet);
fpSpread1.LoadFormulas(false);
}
旧文書番号
84241