private DateTimePicker CloneDateTimePicker(DateTimePicker dtpOriginal)
        {
            var newdtp = (DateTimePicker)Activator.CreateInstance(dtpOriginal.GetType());

            newdtp.AutoSize = dtpOriginal.AutoSize;
            newdtp.Format   = dtpOriginal.Format;
            this.flowLayoutPanel.SetFillWeight(newdtp, 1);
            return(newdtp);
        }
示例#2
0
        private void GeneratedControlByPropertyInfo(PropertyInfo property)
        {
            Type propertyType = property.PropertyType;

            if (propertyType == typeof(Guid))
            {
                return;
            }
            DataMemberAttribute dataMember = property.GetCustomAttributes(typeof(DataMemberAttribute), false)
                                             .FirstOrDefault() as DataMemberAttribute;

            if (dataMember == null)
            {
                return;
            }
            NotMappedAttribute notMapped = property.GetCustomAttributes(typeof(NotMappedAttribute), false)
                                           .FirstOrDefault() as NotMappedAttribute;

            if (notMapped != null)
            {
                return;
            }
            DisplayNameAttribute display = property.GetCustomAttributes(typeof(DisplayNameAttribute), false)
                                           .FirstOrDefault() as DisplayNameAttribute;
            MaxLengthAttribute maxLength = property.GetCustomAttributes(typeof(MaxLengthAttribute), false)
                                           .FirstOrDefault() as MaxLengthAttribute;

            if (display == null)
            {
                return;
            }
            //标签处理
            Label label = new Label();

            label.Width     = EditControlWidth / 2;
            label.Name      = label.GetType().Name + property.Name;
            label.Text      = display.DisplayName + ":";
            label.TextAlign = ContentAlignment.MiddleCenter;
            EditControls.Add(label);
            if (propertyType == typeof(string))
            {
                //字符串
                TextBox textBox = new TextBox();
                textBox.Name  = textBox.GetType().Name + property.Name;
                textBox.Width = EditControlWidth;
                //处理长度
                if (maxLength == null)
                {
                    textBox.MaxLength = 32;
                }
                else
                {
                    textBox.MaxLength = maxLength.Length / 2;
                }
                EditControls.Add(textBox);
            }
            //日期
            else if (propertyType == typeof(DateTime))
            {
                DateTimePicker dateTimePicker = new DateTimePicker();
                dateTimePicker.Name    = dateTimePicker.GetType().Name + property.Name;
                dateTimePicker.Value   = DateTime.Now;
                dateTimePicker.Width   = EditControlWidth;
                dateTimePicker.MaxDate = DateTime.Now.AddYears(100);
                dateTimePicker.MinDate = DateTime.Now.AddYears(-100);
                EditControls.Add(dateTimePicker);
            }
        }
示例#3
0
    protected void Page_Load(object sender, EventArgs e)
    {
        DateTimePicker picker = this;

        ScriptManager.RegisterClientScriptBlock(picker, picker.GetType(), "message", "<script type=\"text/javascript\" language=\"javascript\">getDateTimePicker();</script>", false);
    }