/// <summary> /// 设置可编辑列类型 /// </summary> /// <param name="index">列索引</param> /// <param name="colStyle">列类型</param> public bool SetEditColumnStyle(int index, EditColumnStyle colStyle) { Debug.Assert(index > -1 && index < this.Columns.Count); if (_colCtrlDic.ContainsKey(index)) { return(false); } else { switch (colStyle) { case EditColumnStyle.StringTextBox: NormalCharTextBox txtBox = new NormalCharTextBox(); InitTextBox(txtBox); _colCtrlDic.Add(index, txtBox); break; case EditColumnStyle.IntTextBox: IntTextBox txtIntBox = new IntTextBox(); InitTextBox(txtIntBox); _colCtrlDic.Add(index, txtIntBox); break; case EditColumnStyle.DoubleTextBox: DoubleTextBox txtDoubleBox = new DoubleTextBox(); InitTextBox(txtDoubleBox); _colCtrlDic.Add(index, txtDoubleBox); break; case EditColumnStyle.CombBox: ComboBox cmbBox = new ComboBox(); cmbBox.Visible = false; cmbBox.DropDownStyle = ComboBoxStyle.DropDownList; cmbBox.FlatStyle = FlatStyle.Standard; cmbBox.Leave += new EventHandler(combBox_Leave); this.Controls.Add(cmbBox); _colCtrlDic.Add(index, cmbBox); break; case EditColumnStyle.DateTimePicker: DateTimePicker dtp = new DateTimePicker(); dtp.Format = DateTimePickerFormat.Custom; dtp.Visible = false; dtp.Leave += new EventHandler(dateTime_Leave); this.Controls.Add(dtp); _colCtrlDic.Add(index, dtp); break; default: break; } return(true); } }
/// <summary> /// 设置numberTextBox的范围 /// </summary> /// <param name="index">列索引</param> /// <param name="minVal">最小值</param> /// <param name="maxVal">最大值</param> /// <returns>是否设置成功</returns> public bool SetTextBoxColumnRange(int index, double minVal, double maxVal) { Debug.Assert(index > -1 && index < this.Columns.Count); if (_colCtrlDic.ContainsKey(index)) { if (_colCtrlDic[index] is IntTextBox) { IntTextBox txtBox = _colCtrlDic[index] as IntTextBox; txtBox.SetRange((int)minVal, (int)maxVal); return(true); } else if (_colCtrlDic[index] is DoubleTextBox) { DoubleTextBox txtBox = _colCtrlDic[index] as DoubleTextBox; txtBox.SetRange(minVal, maxVal); return(true); } } return(false); }