Spread for ASP.NET 11 Product Documentation
DataSource Property (DefaultSheetDataModel)
Example 


FarPoint.Web.Spread Assembly > FarPoint.Web.Spread.Model Namespace > DefaultSheetDataModel Class : DataSource Property
Gets or sets the data source.
Syntax
'Declaration
 
Public Property DataSource As Object
'Usage
 
Dim instance As DefaultSheetDataModel
Dim value As Object
 
instance.DataSource = value
 
value = instance.DataSource
public object DataSource {get; set;}

Property Value

String containing the name of data source
Exceptions
ExceptionDescription
Data source is empty
Example
This example creates a DefaultSheetDataModel and assigns it to the DataModel of the spreadsheet. The data source of the model is attached to some DataTables and the ParentRelationName and ParentRowIndex are returned to a list box.
Private Sub Page_Load(ByVal sender As System.Object,ByVal e As System.EventArgs)Handles MyBase.Load

If(IsPostBack)Then Return

Dim ds As New System.Data.DataSet()
Dim dm As New FarPoint.Web.Spread.Model.DefaultSheetDataModel()
FpSpread1.ActiveSheetView.DataModel=dm
FpSpread1.HierarchicalView=True

Dim emp As DataTable=New DataTable("Employee")
Dim dept As DataTable=New DataTable("Department")

Dim lname As DataColumn = New DataColumn("LastName",GetType(System.String))
Dim fname As DataColumn = New DataColumn("FirstName",GetType(System.String))

Dim dname As DataColumn = New DataColumn("DeptName",GetType(System.String))
Dim area As DataColumn = New DataColumn("Area",GetType(System.String))

Dim id As DataColumn = emp.Columns.Add("ID",GetType(System.Int32))
id.AutoIncrement=True
Dim primarykey As DataColumn() = New DataColumn(){id}
emp.PrimaryKey=primarykey
emp.Columns.Add(lname)
emp.Columns.Add(fname)

id=dept.Columns.Add("ID",GetType(System.Int32))
id.AutoIncrement=True
dept.PrimaryKey = New DataColumn(){id}
id.AutoIncrement=True
Dim lang As DataColumn = dept.Columns.Add("Language",GetType(System.Int32))
Dim foreignkey As DataColumn() = New DataColumn(){lang}
dept.Columns.Add(dname)
dept.Columns.Add(area)

ds.Tables.Add(emp)
ds.Tables.Add(dept)

Dim ti As DataRow=emp.NewRow()
ti(lname)="Bazemoreland"
ti(fname)="Ti"
emp.Rows.Add(ti)

Dim ginny As DataRow=emp.NewRow()
ginny(lname)="Danielson"
ginny(fname)="Ginny"
emp.Rows.Add(ginny)

Dim bob As DataRow=emp.NewRow()
bob(lname)="Morrison"
bob(fname)="Bob"
emp.Rows.Add(bob)

Dim rel As DataRelation= New DataRelation("FarPoint",primarykey,foreignkey,False)
ds.Relations.Add(rel)

Dim row As DataRow=dept.NewRow()
row("Language")=ti("ID")
row(dname)="TechSupport"
row(area)="C#"
dept.Rows.Add(row)

row=dept.NewRow()
row("Language")=ginny("ID")
row(dname)="TechSupport"
row(area)="VB.Net"
dept.Rows.Add(row)
row=dept.NewRow()
row("Language")=bob("ID")
row(dname)="TechSupport"
row(area)="C#"
dept.Rows.Add(row)
ds.AcceptChanges()
dm.DataSource=ds
dm.DataMember="Employee"

Dim dm2 As FarPoint.Web.Spread.Model.DefaultSheetDataModel
dm2=FpSpread1.Sheets(0).GetChildView(0,0).DataModel
ListBox1.Items.Add(dm2.ParentRelationName)
ListBox1.Items.Add(dm2.ParentRowIndex)
ListBox1.Items.Add(dm.ChildRelationCount)
End Sub
private void Page_Load(object sender,System.EventArgs e)
{
System.Data.DataSet ds = new System.Data.DataSet();
FarPoint.Web.Spread.Model.DefaultSheetDataModel dm;
dm = new FarPoint.Web.Spread.Model.DefaultSheetDataModel();
FpSpread1.ActiveSheetView.DataModel = dm;
FpSpread1.HierarchicalView=true;
DataTable emp = new DataTable("Employee");
DataTable dept = new DataTable("Department");

DataColumn lname = new DataColumn("LastName",typeof(String));
DataColumn fname = new DataColumn("FirstName",typeof(String));

DataColumn dname = new DataColumn("DeptName",typeof(String));
DataColumn area = new DataColumn("Area",typeof(String));

DataColumn id = emp.Columns.Add("ID",typeof(Int32));
id.AutoIncrement=true;
emp.PrimaryKey=new DataColumn[]{id};
emp.Columns.Add(lname);
emp.Columns.Add(fname);

id=dept.Columns.Add("ID",typeof(Int32));
id.AutoIncrement=true;
dept.PrimaryKey=new DataColumn[]{id};
id.AutoIncrement=true;
DataColumnlang=dept.Columns.Add("Language",typeof(Int32));
DataColumn[]foreignkey=new DataColumn[]{lang};
dept.Columns.Add(dname);
dept.Columns.Add(area);

ds.Tables.Add(emp);
ds.Tables.Add(dept);

DataRow ti=emp.NewRow();
ti[lname]="Bazemoreland";
ti[fname]="Ti";
emp.Rows.Add(ti);

DataRow ginny=emp.NewRow();
ginny[lname]="Danielson";
ginny[fname]="Ginny";
emp.Rows.Add(ginny);

DataRow bob=emp.NewRow();
bob[lname]="Morrison";
bob[fname]="Bob";
emp.Rows.Add(bob);

DataRelation rel = new DataRelation("FarPoint",emp.PrimaryKey,foreignkey,false);
ds.Relations.Add(rel);

DataRow row=dept.NewRow();
row["Language"]=ti["ID"];
row[dname]="TechSupport";
row[area]="C#";
dept.Rows.Add(row);

row=dept.NewRow();
row["Language"]=ginny["ID"];
row[dname]="TechSupport";
row[area]="VB.Net";
dept.Rows.Add(row);
row=dept.NewRow();
row["Language"]=bob["ID"];
row[dname]="TechSupport";
row[area]="C#";
dept.Rows.Add(row);
ds.AcceptChanges();
dm.DataSource=ds;
dm.DataMember="Employee";
FarPoint.Web.Spread.Model.DefaultSheetDataModel dm2;
dm2=(FarPoint.Web.Spread.Model.DefaultSheetDataModel)FpSpread1.Sheets[0].GetChildView(0,0).DataModel;
ListBox1.Items.Add(dm2.ParentRelationName);
ListBox1.Items.Add(Convert.ToString(dm2.ParentRowIndex));
ListBox1.Items.Add(Convert.ToString(dm.ChildRelationCount));
}
See Also

Reference

DefaultSheetDataModel Class
DefaultSheetDataModel Members