using System;
using System.Data;
//using System.Runtime.Serialization.Formatters.Binary;
namespace GeoLib
{
/// <summary>
/// 主要通过DataGridView表格来绑定自动输入自定义类的二维数组数据
/// 数组输入时 表格数据源 DataGridView1.DataSource = [class].getTable();
/// 所有数据存于dTable中
/// 不能调用变量获取数据,因为这是针对二维数组扩展的
/// getValues(object[] rtobjs)取所有数据数组
/// getValue(int rowIndex,object rtobj)取每一行数据
/// By LQH 2012-11-25,查了网上很多资料,觉得不好用,故动手写如下类结构,以方便自定义类的数组输入输出
/// </summary>
[Serializable]//可序列化,以求简单存取
public class ClassDataEditor //基类 建议用将其作为基类重载,特别是多个数据类型采用此结构时,在新类中只需添加变量名即可
{
//程序员定义类的变量,每一变量建议赋于初始值 建议重载时再赋变量
//public double dch=0; //地层厚
//public int b=0;
//public int c=0;
//public string dcname=""; //地层名称
//程序员定义类的变量,程序员只需加入所需的变量即可
private DataTable dTable; //保存类中数组数据
public ClassDataEditor()
{
}
/// <summary>
/// 数组维数长度
/// </summary>
/// <returns></returns>
public int getLength()
{
return dTable.Rows.Count;
}
/// <summary>
/// 返回装载此类数组的数据表
/// </summary>
/// <returns></returns>
public DataTable getTable()
{//根据struct的结构构建