using DevExpress.XtraEditors; using HL_FristAidPlatform_DTO; using HL_FristAidPlatform_Public; using Newtonsoft.Json; using System; using System.Reflection; using System.Windows.Forms; namespace HL_FristAidPlatform_DynamicElectrocardiogram { public partial class Form_DynamicElectrocardiogramDetailed : XtraForm { #region 变量 /// /// 姓名 /// private string name; /// /// 年龄 /// private string age; /// /// 性别 /// private string sex; /// /// 设备号 /// private string wardNo; /// /// 等待加载提示 /// private Loading loading = new Loading(); #endregion /// /// 动态心电监控 /// /// 患者姓名 /// 患者年龄 /// 患者性别 /// 设备号 public Form_DynamicElectrocardiogramDetailed(string _name, string _age, string _sex, string _wardNo) { name = _name; age = _age; sex = _sex; wardNo = _wardNo; InitializeComponent(); } /// /// 窗体加载 /// /// /// private void Form_DynamicElectrocardiogramDetailed_Load(object sender, EventArgs e) { if (PublicHelp.IsConnectNetwork()) { CreateEcg(); } else { XtraMessageBox.Show("无法连接到Internet,因此无法获取急救车上患者信息!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } /// /// 创建心电图界面 /// private void CreateEcg() { try { PatientInfo patientInfo = new PatientInfo(); patientInfo.patientName = "马占秀";// name; patientInfo.patientAge = "74";// age; //if (sex == "M") //{ // sex = "男"; //} //else if (sex == "W") //{ // sex = "女"; //} patientInfo.patientSex = "男";//sex; ECGShowParameter parameter = new ECGShowParameter(); parameter.height = panel_ECG.Height.ToString(); parameter.width = panel_ECG.Width.ToString(); parameter.patientFlag = "1"; parameter.patientInfo = patientInfo; parameter.wardNo = "9dbb67a530eb876802476f5565fd548";//wardNo; parameter.orgCode = Information.Hospital.Ecg_OrgCode; string paras = JsonConvert.SerializeObject(parameter); string dllPath = string.Format(Application.StartupPath + "\\ECG\\Hwyl.ECG_New.dll", System.Environment.CurrentDirectory);//dll组件路径 Assembly pAss = Assembly.LoadFrom(dllPath);//加载组件 Type pType = pAss.GetType("Hwyl.ECG_New.ECGViewControl");//获得类,ECG_New命名空间,ECGViewControl类名 MethodInfo pMtInfo = pType.GetMethod("ECGViewControl");//获得方法,ECGViewControl方法名 object o = Activator.CreateInstance(pType, paras);//创建类实例 panel_ECG.Controls.Add((Control)o); //创建类实例 //this.Invoke(new ThreadStart(() => panel_ECG.Controls.Add((Control)Activator.CreateInstance(pType, paras)))); } catch (Exception ex) { PublicClass.WriteErrorLog(this.Text, "窗体加载:\r\n" + ex); } } } }