using System; using System.Collections.Generic; using System.ComponentModel; using System.Diagnostics; using System.Linq; using System.Text; using System.Windows.Forms; using Mesnac.Controls.Base; using System.Drawing; namespace Mesnac.Controls.Default { [ToolboxBitmap(typeof(DateTimePicker))] public partial class MCDateTimePicker : DateTimePicker, IBaseControl { #region 字段定义 private bool _mcVisible = true; //保存可见性 private bool _mcEnabled = true; //保存可用性 private bool _isValid = true; //允许 private bool _isEventValid = true; //保存事件有效性 private List _valueChangedList = new List(); #endregion #region 构造方法 public MCDateTimePicker() { InitializeComponent(); } public MCDateTimePicker(IContainer container) { container.Add(this); InitializeComponent(); } #endregion #region 事件定义 public List ValueChangedList { get { return _valueChangedList; } set { _valueChangedList = value; } } #endregion #region 接口成员实现 public string MCKey { get; set; } public object MCValue { get { if (String.IsNullOrEmpty(this.CustomFormat)) { return this.Value; } else { DateTime dt = DateTime.Now; if (DateTime.TryParse(this.Value.ToString(), out dt)) { try { string value = String.Format("{0:" + this.CustomFormat + "}", dt); return value; } catch { return this.Value; } } else { return this.Value; } } } set { this.Value = value == null ? DateTime.Now : Convert.ToDateTime(value); } } public IBaseControl MCRoot { get; set; } [TypeConverter(typeof(DataSourceConverter))] [Description("数据连接"), Category("数据")] public string MCDataSourceID { get; set; } public MCDataSource MCDataSource { get; set; } [Description("是否为数据库控件"), Category("数据")] public bool IsDbControl { get; set; } [Description("初始化SQL"), Category("数据")] public string InitDataSource { get; set; } [Description("执行SQL"), Category("数据")] public string ActionDataSource { get; set; } [Description("绑定数据源"), Category("数据")] public object BindDataSource { get; set; } [Description("操作类型"), Category("数据")] public DbOptionTypes DbOptionType { get; set; } [Description("是否可见"), Category("行为")] public bool MCVisible { get { return this._mcVisible; } set { this._mcVisible = value == null ? true : value; if (this.Site.DesignMode) { this.Visible = true; } else { this.Visible = this._mcVisible; } } } [Description("是否可用"), Category("行为")] public bool MCEnabled { get { return this._mcEnabled; } set { this._mcEnabled = value == null ? true : value; if (this.Site.DesignMode) { this.Enabled = true; } else { this.Enabled = this._mcEnabled; } } } public bool IsValid { get { return _isValid; } set { _isValid = value; } } public bool IsEventValid { get { return this._isEventValid; } set { this._isEventValid = value; } } #endregion } }