private void UnitTextBoxUnder_ValueTextChanged(object sender, EventArgs e) { XUnitTextBoxMul render = sender as XUnitTextBoxMul; if (this.XUnitTextBoxList != null && this.XUnitTextBoxList.Count > 0 && this.XUnitTextBoxList.Count == this.ListDo.Length) { for (int i = 0; i < this.XUnitTextBoxList.Count; i++) { if (this.XUnitTextBoxList[i] == render && this.ListDo[i] is OrTplNItmDO) { if (render.ValueText != "-") { if (string.IsNullOrWhiteSpace(render.ValueText)) { (this.ListDo[i] as OrTplNItmDO).Quan_med = 0; } else { (this.ListDo[i] as OrTplNItmDO).Quan_med = Convert.ToDouble(render.ValueText); } break; } } } } }
void xapFormControl_FormCreated(object sender, EventArgs e) { patAgeRender = this.xapFormControl.GetUserRender("pat_card", "patAge") as XLabelBaseUserRender; XUnitTextBoxMul utxt = patAgeRender.UserRender as XUnitTextBoxMul; utxt.UnitText = "岁"; agentAgeRender = this.xapFormControl.GetUserRender("pat_card", "agentAge") as XLabelBaseUserRender; agentAgeRender.ValueTextChanged += new EventHandler(ageRender_ValueTextChanged); agentAgeRender.ValueTextChanging += ageender_ValueTextChanging; agentAgeRender.MaxLength = 4; agentAgeRender.MultilineNum = 1; XUnitTextBoxMul wutxt = agentAgeRender.UserRender as XUnitTextBoxMul; wutxt.UnitText = "岁"; }
private void unitFreqGroup_UnitTextBoxValueTextChanged(object sender, EventArgs e) { XUnitTextBoxMul render = sender as XUnitTextBoxMul; if (this.ListDo != null && this.ListDo.Length > 0) { if (render.ValueText != "-") { if (string.IsNullOrWhiteSpace(render.ValueText)) { (this.ListDo[0] as OrTplNItmDO).Quan_med = 0; } else { (this.ListDo[0] as OrTplNItmDO).Quan_med = Convert.ToDouble(render.ValueText); } } } }
/// <summary> /// 频次单位双下拉框控件(频次下拉单位文本框组合控件) /// </summary> /// <param name="parent"></param> /// <param name="isDoubleDrop">是否是双下拉形式</param> public XOrderUnitFreqGroup(Control parent, bool isDoubleDrop) { this.Size = new System.Drawing.Size(205, 24); this.isDoubleDrop = isDoubleDrop; if (isDoubleDrop) { unitReUnder = new XComboBoxUnit(parent); unitReUnder.Size = new System.Drawing.Size(102, 24); unitReUnder.Location = new Point(this.Bound.X, this.Bound.Y); unitReUnder.RightTophorn = false; unitReUnder.RightBottmhorn = false; unitReUnder.SelectValueChanged += new EventHandler(UnitReUnder_SelectValueChanged); unitReUnder.ValueTextChanged += new EventHandler(UnitReUnder_ValueTextChanged); this.AddRender(unitReUnder); freqncRender = new XComboBox(parent); freqncRender.Size = new Size(102, 24); freqncRender.Location = new Point(unitReUnder.Bound.Right - 1, unitReUnder.Bound.Top); freqncRender.ValueTextChanged += new EventHandler(FreqncRender_ValueTextChanged); freqncRender.LeftTophorn = false; freqncRender.LeftBottmhorn = false; this.AddRender(freqncRender); } else { unitTextBox = new XUnitTextBoxMul(); unitTextBox.Size = new System.Drawing.Size(100, 24); unitTextBox.IsNumber = true; unitTextBox.NullFlag = false; unitTextBox.MinValue = 0; unitTextBox.MaxLength = 4; unitTextBox.Location = new Point(this.Bound.X, this.Bound.Y); unitTextBox.ValueTextChanged += new EventHandler(UnitTextBox_ValueTextChanged); this.AddRender(unitTextBox); freqncRender = new XComboBox(parent); freqncRender.Size = new Size(100, 24); freqncRender.ValueTextChanged += new EventHandler(FreqncRender_ValueTextChanged); freqncRender.Location = new Point(unitTextBox.Bound.Right + 4, unitTextBox.Bound.Top); this.AddRender(freqncRender); } }
protected void Load() { this.RenderList = new List <UserRender>(); if (this.ListDo != null && this.ListDo.Length > 0) { if (this.ListDo.Length > 0) { OrderRender TMP = new OrderRender(this.parent); #region Ui_flag=1 套 if ((ObjDo as NewOrderTemplateDTO).Ui_flag == "1") { lable = new Brieflabel(); lable.ForeColor = Color.FromArgb(0, 153, 229); //lable.Size = new Size(141, 24); //lable.Topspace = 4; lable.Font = new Font("微软雅黑", 12, GraphicsUnit.Pixel); lable.Text = (ObjDo as NewOrderTemplateDTO).Name; if (TextRenderer.MeasureText(lable.Text, lable.Font).Width > 141) { lable.Size = new Size(141, 24); } else { lable.Size = new Size(TextRenderer.MeasureText(lable.Text, lable.Font).Width, 24); } this.lablelist.Add(lable); this.AddRender(lable); this.RenderList.Add(lable); OrderRenderList = new List <OrderRender>(); foreach (OrTplNItmDO Second in this.ListDo) { OrderRender ThreadRender = new OrderRender(this.parent); ThreadRender.ObjDo = Second; ThreadRender.EditFlag = Second.Fg_edit.Value; ThreadRender.Id = Second.Id_ortmplitm; ThreadRender.Size = new Size(260, 24); ThreadRender.parentOrderRender = this; ThreadRender.isparent = false; OrderRenderList.Add(ThreadRender); this.AddRender(ThreadRender); this.RenderList.Add(ThreadRender); TMP = ThreadRender; } } #endregion #region 2:(多药品)药品 else if ((ObjDo as NewOrderTemplateDTO).Ui_flag == "2") { lable = new Brieflabel(); lable.ForeColor = Color.FromArgb(0, 153, 229); //lable.Size = new System.Drawing.Size(141, 24); //lable.Topspace = 4; lable.Font = new Font("微软雅黑", 12, GraphicsUnit.Pixel); lable.Text = (ObjDo as NewOrderTemplateDTO).Name; if (TextRenderer.MeasureText(lable.Text, lable.Font).Width > 141) { lable.Size = new Size(141, 24); } else { lable.Size = new Size(TextRenderer.MeasureText(lable.Text, lable.Font).Width, 24); } XComboBox freqnc = new XComboBox(this.parent); freqnc.Location = new Point(lable.Bound.Right + 5, lable.Bound.Top - 3); //freqnc.DataSource = (ObjDo as NewOrderTemplateDTO).getFreqdefdo(); freqnc.ValueText = (this.ListDo[0] as OrTplNItmDO).Ortplnitm_srv_name; freqnc.Size = new System.Drawing.Size(92, 24); freqnc.ValueTextChanged += new EventHandler(freqnc_ValueTextChanged); this.lablelist.Add(lable); this.AddRender(lable); this.AddRender(freqnc); this.RenderList.Add(lable); this.RenderList.Add(freqnc); OrderRenderList = new List <OrderRender>(); XUnitTextBoxList = new List <XUnitTextBoxMul>(); foreach (OrTplNItmDO Second in this.ListDo) { OrderRender ThreadRender = new OrderRender(this.parent); ThreadRender.ObjDo = Second; ThreadRender.Id = Second.Id_ortmplitm; ThreadRender.Size = new Size(260, 24); ThreadRender.parentOrderRender = this; ThreadRender.isparent = false; this.AddRender(ThreadRender); this.RenderList.Add(ThreadRender); OrderRenderList.Add(ThreadRender); //XComboBoxUnitList = new List<XComboBoxUnit>(); //XComboBoxUnit UnitReUnder = new XComboBoxUnit(this.parent); //UnitReUnder.ValueText = Second.Quan_med.ToString(); //UnitReUnder.DataSource = (ObjDo as NewOrderTemplateDTO).getmeasList(); //UnitReUnder.ValueUnit = Second.Id_unit_med; //ThreadRender.Check = false; //UnitReUnder.Location = new Point(ThreadRender.Bound.Right, ThreadRender.Bound.Top); //UnitReUnder.ValueTextChanged += new EventHandler(ComBoxUnitReUnder_ValueTextChanged); //UnitReUnder.SelectValueChanged += new EventHandler(ComBoxUnitReUnder_SelectValueChanged); //ThreadRender.AddRender(UnitReUnder); //ThreadRender.RenderList.Add(UnitReUnder); //XComboBoxUnitList.Add(UnitReUnder); XUnitTextBoxMul UnitTextBoxUnder = new XUnitTextBoxMul(); UnitTextBoxUnder.Size = new System.Drawing.Size(92, 24); UnitTextBoxUnder.IsNumber = true; UnitTextBoxUnder.NullFlag = false; UnitTextBoxUnder.MinValue = 0; UnitTextBoxUnder.MaxLength = 4; UnitTextBoxUnder.ValueText = Second.Quan_med.ToString(); UnitTextBoxUnder.UnitText = Second.Ortplnitm_unit_name; ThreadRender.Check = false; UnitTextBoxUnder.Location = new Point(ThreadRender.Bound.Right, ThreadRender.Bound.Top); UnitTextBoxUnder.ValueTextChanged += new EventHandler(UnitTextBoxUnder_ValueTextChanged); ThreadRender.AddRender(UnitTextBoxUnder); ThreadRender.RenderList.Add(UnitTextBoxUnder); XUnitTextBoxList.Add(UnitTextBoxUnder); TMP = ThreadRender; } } #endregion #region 5 草药 else if ((ObjDo as NewOrderTemplateDTO).Ui_flag == "5") { lable = new Brieflabel(); lable.ForeColor = Color.FromArgb(0, 153, 229); //lable.Size = new System.Drawing.Size(141, 24); //lable.Topspace = 4; lable.Font = new Font("微软雅黑", 12, GraphicsUnit.Pixel); lable.Text = (ObjDo as NewOrderTemplateDTO).Name; if (TextRenderer.MeasureText(lable.Text, lable.Font).Width > 141) { lable.Size = new Size(141, 24); } else { lable.Size = new Size(TextRenderer.MeasureText(lable.Text, lable.Font).Width, 24); } // XComboBox freqnc = new XComboBox(this.parent); //freqnc.Location = new Point(lable.Bound.Right + 5, lable.Bound.Top - 3); //freqnc.DataSource = (ObjDo as NewOrderTemplateDTO).getFreqdefdo(); //freqnc.ValueText = (this.ListDo[0] as OrTplNItmDO).Ortplnitm_srv_name; //freqnc.Size = new System.Drawing.Size(92, 24); //freqnc.ValueTextChanged += new EventHandler(freqnc_ValueTextChanged); this.lablelist.Add(lable); this.AddRender(lable); // this.AddRender(freqnc); this.RenderList.Add(lable); //this.RenderList.Add(freqnc); OrderRenderList = new List <OrderRender>(); XUnitTextBoxList = new List <XUnitTextBoxMul>(); foreach (OrTplNItmDO Second in this.ListDo) { OrderRender ThreadRender = new OrderRender(this.parent); ThreadRender.ObjDo = Second; ThreadRender.Id = Second.Id_ortmplitm; ThreadRender.Size = new Size(260, 24); ThreadRender.parentOrderRender = this; ThreadRender.isparent = false; this.AddRender(ThreadRender); this.RenderList.Add(ThreadRender); OrderRenderList.Add(ThreadRender); //XComboBoxUnitList = new List<XComboBoxUnit>(); //XComboBoxUnit UnitReUnder = new XComboBoxUnit(this.parent); //UnitReUnder.ValueText = Second.Quan_med.ToString(); //UnitReUnder.DataSource = (ObjDo as NewOrderTemplateDTO).getmeasList(); //UnitReUnder.ValueUnit = Second.Id_unit_med; //ThreadRender.Check = false; //UnitReUnder.Location = new Point(ThreadRender.Bound.Right, ThreadRender.Bound.Top); //UnitReUnder.ValueTextChanged += new EventHandler(ComBoxUnitReUnder_ValueTextChanged); //UnitReUnder.SelectValueChanged += new EventHandler(ComBoxUnitReUnder_SelectValueChanged); //ThreadRender.AddRender(UnitReUnder); //ThreadRender.RenderList.Add(UnitReUnder); //XComboBoxUnitList.Add(UnitReUnder); XUnitTextBoxMul UnitTextBoxUnder = new XUnitTextBoxMul(); UnitTextBoxUnder.Size = new System.Drawing.Size(92, 24); UnitTextBoxUnder.IsNumber = true; UnitTextBoxUnder.NullFlag = false; UnitTextBoxUnder.MinValue = 0; UnitTextBoxUnder.MaxLength = 4; UnitTextBoxUnder.ValueText = Second.Quan_med.ToString(); UnitTextBoxUnder.UnitText = Second.Ortplnitm_unit_name; ThreadRender.Check = false; UnitTextBoxUnder.Location = new Point(ThreadRender.Bound.Right, ThreadRender.Bound.Top); UnitTextBoxUnder.ValueTextChanged += new EventHandler(UnitTextBoxUnder_ValueTextChanged); ThreadRender.AddRender(UnitTextBoxUnder); ThreadRender.RenderList.Add(UnitTextBoxUnder); XUnitTextBoxList.Add(UnitTextBoxUnder); TMP = ThreadRender; } } #endregion #region 3:(单一药品),4其他 else if ((ObjDo as NewOrderTemplateDTO).Ui_flag == "3") { if (this.ListDo[0] is OrTplNItmDO) { this.isparent = false; this.Id = (this.ListDo[0] as OrTplNItmDO).Id_ortmplitm; lable = new Brieflabel(); lable.ForeColor = Color.FromArgb(0, 153, 229); //lable.Size = new System.Drawing.Size(141, 24); //lable.Topspace = 4; lable.Font = new Font("微软雅黑", 12, GraphicsUnit.Pixel); lable.Text = (this.ListDo[0] as OrTplNItmDO).Ortplnitm_srv_name; if (TextRenderer.MeasureText(lable.Text, lable.Font).Width > 141) { lable.Size = new Size(141, 24); } else { lable.Size = new Size(TextRenderer.MeasureText(lable.Text, lable.Font).Width, 24); } lablelist.Add(lable); this.AddRender(lable); this.RenderList.Add(lable); XOrderUnitFreqGroup unitFreqGroup = new XOrderUnitFreqGroup(this.parent, false); this.Check = false; unitFreqGroup.ValueText = (this.ListDo[0] as OrTplNItmDO).Quan_med.ToString(); // unitFreqGroup.UnitDataSource = (ObjDo as NewOrderTemplateDTO).getmeasList(); unitFreqGroup.UnitValueText = (this.ListDo[0] as OrTplNItmDO).Ortplnitm_unit_name; unitFreqGroup.FreqncDataSource = (ObjDo as NewOrderTemplateDTO).getFreqdefdo(); unitFreqGroup.FreqncValueText = (this.ListDo[0] as OrTplNItmDO).Ortplnitm_freq_name; // unitFreqGroup.UnitReUnderSelectValueChanged += new EventHandler(UnitReUnder_SelectValueChanged); unitFreqGroup.UnitTextBoxValueTextChanged += new EventHandler(unitFreqGroup_UnitTextBoxValueTextChanged); unitFreqGroup.FreqncRenderValueTextChanged += new EventHandler(FreqncRender_ValueTextChanged); this.AddRender(unitFreqGroup); this.RenderList.Add(unitFreqGroup); } } else { if (this.ListDo[0] is OrTplNItmDO) { this.isparent = false; this.Id = (this.ListDo[0] as OrTplNItmDO).Id_ortmplitm; lable = new Brieflabel(); //lable.Size = new System.Drawing.Size(141, 24); lable.ForeColor = Color.FromArgb(0, 153, 229); //lable.Topspace = 4; lable.Font = new Font("微软雅黑", 12, GraphicsUnit.Pixel); lable.Text = (this.ListDo[0] as OrTplNItmDO).Ortplnitm_srv_name; if (TextRenderer.MeasureText(lable.Text, lable.Font).Width > 141) { lable.Size = new Size(141, 24); } else { lable.Size = new Size(TextRenderer.MeasureText(lable.Text, lable.Font).Width, 24); } lablelist.Add(lable); this.AddRender(lable); this.RenderList.Add(lable); } } #endregion this.LastBottm = TMP.Bound.Bottom; } } #region 单一使用没有子元素 else if (this.ObjDo != null) { if (this.ObjDo is MedSrvDO) { lable = new Brieflabel(); //lable.Size = new System.Drawing.Size(171, 24); //lable.Topspace = 4; lable.Font = new Font("微软雅黑", 12, GraphicsUnit.Pixel); lable.Text = (this.ObjDo as MedSrvDO).Name; if (TextRenderer.MeasureText(lable.Text, lable.Font).Width > 171) { lable.Size = new Size(171, 24); } else { lable.Size = new Size(TextRenderer.MeasureText(lable.Text, lable.Font).Width, 24); } lablelist.Add(lable); this.AddRender(lable); this.RenderList.Add(lable); } if (this.ObjDo is OrTplItmDtDO) { lable = new Brieflabel(); //lable.Size = new System.Drawing.Size(141, 24); //lable.Topspace = 4; lable.Font = new Font("微软雅黑", 12, GraphicsUnit.Pixel); lable.Text = (this.ObjDo as OrTplItmDtDO).Name_srv; if (TextRenderer.MeasureText(lable.Text, lable.Font).Width > 141) { lable.Size = new Size(141, 24); } else { lable.Size = new Size(TextRenderer.MeasureText(lable.Text, lable.Font).Width, 24); } lablelist.Add(lable); this.AddRender(lable); this.RenderList.Add(lable); } if (this.ObjDo is SrvortplitemAggDO) { lable = new Brieflabel(); //lable.Size = new System.Drawing.Size(141, 24); //lable.Topspace = 4; lable.Font = new Font("微软雅黑", 12, GraphicsUnit.Pixel); lable.Text = (this.ObjDo as SrvortplitemAggDO).getParentDO().Name_srv; if (TextRenderer.MeasureText(lable.Text, lable.Font).Width > 141) { lable.Size = new Size(141, 24); } else { lable.Size = new Size(TextRenderer.MeasureText(lable.Text, lable.Font).Width, 24); } lablelist.Add(lable); this.AddRender(lable); this.RenderList.Add(lable); } if (this.ObjDo is RegularOrRelSrvDO) { lable = new Brieflabel(); //lable.Size = new System.Drawing.Size(171, 24); //lable.Topspace = 4; lable.Font = new Font("微软雅黑", 12, GraphicsUnit.Pixel); lable.Text = (this.ObjDo as RegularOrRelSrvDO).Name_srv; if (TextRenderer.MeasureText(lable.Text, lable.Font).Width > 171) { lable.Size = new Size(171, 24); } else { lable.Size = new Size(TextRenderer.MeasureText(lable.Text, lable.Font).Width, 24); } lablelist.Add(lable); this.AddRender(lable); this.RenderList.Add(lable); } if (this.ObjDo is OrTplNItmDO) { lable = new Brieflabel(); //lable.Size = new System.Drawing.Size(141, 24); //lable.Topspace = 4; lable.Font = new Font("微软雅黑", 12, GraphicsUnit.Pixel); lable.Text = (this.ObjDo as OrTplNItmDO).Ortplnitm_srv_name; if (TextRenderer.MeasureText(lable.Text, lable.Font).Width > 141) { lable.Size = new Size(141, 24); } else { lable.Size = new Size(TextRenderer.MeasureText(lable.Text, lable.Font).Width, 24); } lablelist.Add(lable); this.AddRender(lable); this.RenderList.Add(lable); } #endregion } RecLocat(); }