MESCIUS SPREAD for Windows Forms 17.0J
GetChildDataModel メソッド (DefaultSheetDataModel)

取得する子データモデルの親行
データリレーション名
指定した行とデータリレーションのデータモデル(ISheetDataModel)を取得します。
構文
'Declaration
 
Public Function GetChildDataModel( _
   ByVal row As Integer, _
   ByVal relation As String _
) As ISheetDataModel
public ISheetDataModel GetChildDataModel( 
   int row,
   string relation
)

パラメータ

row
取得する子データモデルの親行
relation
データリレーション名

戻り値の型

指定した行とデータリレーションのISheetDataModelオブジェクト
次のサンプルコードでは、このメンバを使用して、指定したインデックスの子モデルの名前を返しています。このサンプルコードは、2つのデータテーブルが存在し、それらに適切なリレーションが設定されていることを前提とします。
System.Data.DataSet ds = new System.Data.DataSet();
DataTable name; 
DataTable city; 
name = ds.Tables.Add("Customers"); 
name.Columns.AddRange(new DataColumn[] {new DataColumn("LastName", typeof(string)), new DataColumn("FirstName", typeof(string)),
new DataColumn("ID", typeof(Int32))}); 
name.Rows.Add(new object[] {"Fielding", "William", 0}); 
name.Rows.Add(new object[] {"Williams", "Arthur", 1}); 
name.Rows.Add(new object[] {"Zuchini", "Theodore", 2}); 
city = ds.Tables.Add("City/State"); 
city.Columns.AddRange(new DataColumn[] {new DataColumn("City", typeof(string)), new DataColumn("Owner", typeof(Int32)), new
DataColumn("State", typeof(string))}); 
city.Rows.Add(new object[] {"Atlanta", 0, "Georgia"}); 
city.Rows.Add(new object[] {"Boston", 1, "Mass."}); 
city.Rows.Add(new object[] {"Tampa", 2, "Fla."}); 
ds.Relations.Add("City/State", name.Columns["ID"], city.Columns["Owner"]); 
FarPoint.Win.Spread.Model.ISheetDataModel isdm;
FarPoint.Win.Spread.Model.DefaultSheetDataModel dataModel = new FarPoint.Win.Spread.Model.DefaultSheetDataModel(5, 5);
fpSpread1.ActiveSheet.Models.Data = dataModel;
dataModel.DataSource = ds;
dataModel.DataMember = "Customers";
isdm = dataModel.GetChildDataModel(0, "City/State");
listBox1.Items.Add(Convert.ToString(isdm.ColumnCount));
Dim isdm As FarPoint.Win.Spread.Model.ISheetDataModel
Dim dataModel As New FarPoint.Win.Spread.Model.DefaultSheetDataModel(5, 5)
FpSpread1.ActiveSheet.Models.Data = dataModel
Dim ds As New System.Data.DataSet()
Dim name As DataTable
Dim city As DataTable
name = ds.Tables.Add("Customers")
name.Columns.AddRange(New DataColumn() {New DataColumn("LastName", Type.GetType("System.String")), New DataColumn("FirstName",
Type.GetType("System.String")), New DataColumn("ID", Type.GetType("System.Int32"))})
name.Rows.Add(New Object() {"Fielding", "William", 0})
name.Rows.Add(New Object() {"Williams", "Arthur", 1})
name.Rows.Add(New Object() {"Zuchini", "Theodore", 2})
city = ds.Tables.Add("City/State")
city.Columns.AddRange(New DataColumn() {New DataColumn("City", Type.GetType("System.String")), New DataColumn("Owner", Type.GetType("System.Int32")),
New DataColumn("State", Type.GetType("System.String"))})
city.Rows.Add(New Object() {"Atlanta", 0, "Georgia"})
city.Rows.Add(New Object() {"Boston", 1, "Mass."})
city.Rows.Add(New Object() {"Tampa", 2, "Fla."})
ds.Relations.Add("City/State", name.Columns("ID"), city.Columns("Owner"))
dataModel.DataSource = ds
dataModel.DataMember = "Customers"
isdm = dataModel.GetChildDataModel(0, "City/State")
ListBox1.Items.Add(Convert.ToString(isdm.ColumnCount))
参照

DefaultSheetDataModel クラス
DefaultSheetDataModel メンバ

 

 


© MESCIUS inc. All rights reserved.