我如何设置lookupedit显示格式

时间:2016-03-23 08:34:41

标签: c# winforms devexpress devexpress-windows-ui

表格dt是这样的:

index StartDate         EndDate
1   2015/03/23 22:00    2015/03/23 23:00
2   2015/03/23 22:00    2015/03/23 22:00
3   2015/03/23 22:00    2015/03/23 22:00

我已经设定:

lookupedit1.Properties.ValueMember = "StartDate";
lookupedit1.Properties.DisplayMember = "StartDate";

因此,该值已显示OK,长日期Type,但我希望DisplayMemeber类似于短日期类型。 我已尝试过下面的任何一项,但它预计会有效。

lookupedit1.Properties.Mask.EditMask = "yyyy-MM-dd";
lookupedit1.Properties.DisplayFormat.FormatString = "yyyy-MM-dd";
lookupedit1.Properties.EditFormat.FormatString = "yyyy-MM-dd";  

我如何解决我的问题?

1 个答案:

答案 0 :(得分:2)

  

我希望DisplayMemeber像短日期类型

您可以使用标准d显示格式字符串作为短日期(特定于文化,在MSDN中的Standard Date and Time Format Strings文档中进行了描述)。要指定formatting-behavior,您应该将特定列添加到LookUp编辑中:

lookUpEdit1.Properties.Columns.Add(new DevExpress.XtraEditors.Controls.LookUpColumnInfo()
        {
            FieldName = "StartDate",
            FormatType = DevExpress.Utils.FormatType.DateTime,
            FormatString = "d" // short date
        });
lookUpEdit1.Properties.DataSource = new List<Order> { 
    new Order(){ StartDate = new DateTime(2015, 03, 23, 23, 0, 0) },
    new Order(){ StartDate = new DateTime(2015, 03, 24, 23, 0, 0) },
    new Order(){ StartDate = new DateTime(2015, 03, 25, 23, 0, 0) },
};

要在编辑时设置显示行为,您可以使用编辑器Mask

lookUpEdit1.Properties.Mask.EditMask = "d"; // short date
lookUpEdit1.Properties.Mask.MaskType = DevExpress.XtraEditors.Mask.MaskType.DateTime;
lookUpEdit1.Properties.Mask.UseMaskAsDisplayFormat = true;