revit二次开发学习笔记之使用DataGridView控件交互数据,进行放样融合

    技术2022-07-11  89

    ##revit二次开发学习笔记之使用DataGridView控件进行放样融合## 2020年7月1日,下半年的开始,加油! 今天主要记录一下本人前段时间,写的一个小插件,其中用到了DataGridView;DGV主要是用来显示数据的,但我有个打算是直接在DGV中输入数据,进行放样操作。于是搜索了些博客,相关资料很少(自己认为),根据网上查找资源,自己写了写:

    说一下思路: (1)定义一个用于控件数据绑定的类 //坐标信息 public class PDataInfo { private double p_x; private double p_y; private double p_z; public double P_X { get { return p_x; } set { this.p_x = value; } } public double P_Y { get { return p_y; } set { this.p_y = value; } } public double P_Z { get { return p_z; } set { this.p_z = value; } } public PDataInfo() { //无参构造函数 } public PDataInfo( double x,double y,double z) { this.p_x = x; this.p_y = y; this.p_z = z; } } (2)添加控件DGV,添加列,并将列的数据与类属性绑定。 (3)在确认按钮中编写代码,遍历行列并保存数据 private void OK_BT_Click(object sender, EventArgs e) { //获取datagridview中的数据信息 int row = List_XYZ_DGV.Rows.Count-1;//得到总行数 List<PDataInfo> list = new List<PDataInfo>(); for (int i = 0; i < row; i++)//得到总行数并在之内循环 { double x= Convert.ToDouble( List_XYZ_DGV.Rows[i].Cells[0].Value); double y = Convert.ToDouble(List_XYZ_DGV.Rows[i].Cells[1].Value); double z = Convert.ToDouble(List_XYZ_DGV.Rows[i].Cells[2].Value); PDataInfo pData = new PDataInfo(x,y,z); list.Add(pData); } s_Data.Xyz_List = list; }

    这样就将数据保存在PDataInfo类中,用于使用了。

    Processed: 0.010, SQL: 9