/// <summary> /// 设定二级联动,单击载荷表,显示相应的波段信息 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void dataGridViewSensor_CellClick(object sender, DataGridViewCellEventArgs e) { decimal sensorid = Convert.ToDecimal(this.dataGridViewSensor.CurrentRow.Cells[0].Value); satelliteSensor = dal_satelliteSensor.GetModel(sensorid.ToString()); this.sensorDescription.Text = satelliteSensor.INSTRUMENTDESCRIPTION.ToString(); bindSatBand("SENSOR_ID=" + sensorid.ToString()); }
/// <summary> /// 根据SENSOR_ID获取卫星载荷 /// </summary> /// <param name="id"></param> /// <returns></returns> public CoScheduling.Core.Model.SatelliteSensor GetModel(string id) { StringBuilder strSql = new StringBuilder(); strSql.Append("select * from LHF.SATELLITE_SENSOR "); strSql.Append(" where SENSOR_ID=" + id); using (DbDataReader dr = DbHelperSQL.ExecuteReader(strSql.ToString())) { CoScheduling.Core.Model.SatelliteSensor model = new CoScheduling.Core.Model.SatelliteSensor(); if (dr.Read()) { model = GetModel(dr); } dr.Close(); return(model); } }
/// <summary> /// FormLoad事件 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void SatelliteDetail_Load(object sender, EventArgs e) { //获取父窗体选中卫星信息 GetSatInfo(); //设置标题 this.Text = satellite.SAT_LONGNAME.ToString() + "详情"; //绑定当前页面选中卫星信息 bindSatInfo(); //绑定选中卫星载荷信息 bindSatSensor("SAT_ID=" + sat_id); //绑定波段为第一个载荷信息,因为波段随载荷联动设置为载荷表的cellClick事件,如果不这么做的话,初始化不会显示波段信息,比较不人性化 decimal sensorid = Convert.ToDecimal(this.dataGridViewSensor.CurrentRow.Cells[0].Value); satelliteSensor = dal_satelliteSensor.GetModel(sensorid.ToString()); this.sensorDescription.Text = satelliteSensor.INSTRUMENTDESCRIPTION.ToString(); bindSatBand("SENSOR_ID=" + sensorid.ToString()); }
/// <summary> /// 由一行数据得到一个实体 /// </summary> private CoScheduling.Core.Model.SatelliteSensor GetModel(DbDataReader dr) { CoScheduling.Core.Model.SatelliteSensor model = new CoScheduling.Core.Model.SatelliteSensor(); model.SAT_ID = Convert.ToDecimal(dr["SAT_ID"]); model.SAT_NAME = Convert.ToString(dr["SAT_NAME"]); model.SENSOR_NAME = Convert.ToString(dr["SENSOR_NAME"]); model.SENSOR_ID = Convert.ToDecimal(dr["SENSOR_ID"]); try { model.SENSOR_TYPE = Convert.ToDecimal(dr["SENSOR_TYPE"]); } catch { model.SENSOR_TYPE = Convert.ToDecimal("-1"); } try { model.APPLICATION = Convert.ToString(dr["APPLICATION"]); } catch { model.APPLICATION = Convert.ToString("N/A"); } try { model.FOV = Convert.ToDecimal(dr["FOV"]); } catch { model.FOV = Convert.ToDecimal("-1"); } try { model.SWATHWIDTH = Convert.ToDecimal(dr["SWATHWIDTH"]); } catch { model.SWATHWIDTH = Convert.ToDecimal("-1"); } try { model.ACROSSPOINTINGRANGE = Convert.ToDecimal(dr["ACROSSPOINTINGRANGE"]); } catch { model.ACROSSPOINTINGRANGE = Convert.ToDecimal("-1"); } try { model.ALONGPOINTINGRANGE = Convert.ToDecimal(dr["ALONGPOINTINGRANGE"]); } catch { model.ALONGPOINTINGRANGE = Convert.ToDecimal("-1"); } try { model.LOCATIONACCURACY = Convert.ToDecimal(dr["LOCATIONACCURACY"]); } catch { model.LOCATIONACCURACY = Convert.ToDecimal("-1"); } try { model.NUMOFBANDS = Convert.ToDecimal(dr["NUMOFBANDS"]); } catch { model.NUMOFBANDS = Convert.ToDecimal("-1"); } try { model.BANDCATEGORIES = Convert.ToString(dr["BANDCATEGORIES"]); } catch { model.BANDCATEGORIES = Convert.ToString("N/A"); } try { model.ACCURACY = Convert.ToString(dr["ACCURACY"]); } catch { model.ACCURACY = Convert.ToString("N/A"); } try { model.REVISITTIME = Convert.ToDecimal(dr["REVISITTIME"]); } catch { model.REVISITTIME = Convert.ToDecimal("-1"); } try { model.INSTRUMENTDESCRIPTION = Convert.ToString(dr["INSTRUMENTDESCRIPTION"]); } catch { model.INSTRUMENTDESCRIPTION = Convert.ToString("N/A"); } try { model.DATA_ACCESS = Convert.ToString(dr["DATA_ACCESS"]); } catch { model.DATA_ACCESS = Convert.ToString("N/A"); } try { model.DATA_FORMAT = Convert.ToString(dr["DATA_FORMAT"]); } catch { model.DATA_FORMAT = Convert.ToString("N/A"); } try { model.INCLINATION = Convert.ToDecimal(dr["INCLINATION"]); } catch { model.INCLINATION = Convert.ToDecimal("0"); } return(model); }