using DevExpress.XtraEditors;
using DevExpress.XtraGrid.Columns;
using System;
using System.ComponentModel;
using System.Reflection;
using CompressorXN_Model.ViewModel.Response;
namespace CompressorXN
{
public partial class FrmSearchResult : XtraForm
{
public FrmSearchResult()
{
InitializeComponent();
gridPage.PageIndex = 1;
gridPage.PageSize = 20;
dateTime_Begin.Text = DateTime.Now.AddDays(-1).ToString("yyyy-MM-dd");
dateTime_End.Text = DateTime.Now.ToString("yyyy-MM-dd");
}
///
/// 点击查询按钮
///
///
///
private void btn_Search_Click(object sender, EventArgs e)
{
CreateColumn();
}
///
/// 动态创建列
///
private void CreateColumn()
{
Type type = typeof(ResultVM);//获取类型
PropertyInfo[] properties = type.GetProperties();
int visibleIndex = 10;
foreach (PropertyInfo property in properties)
{
GridColumn gridColumn = new GridColumn();
string description = string.Empty;
string name = property.Name;
var attributes = (DescriptionAttribute[])property.GetCustomAttributes(typeof(DescriptionAttribute), false);
if (attributes.Length > 0)
{
description = attributes[0].Description;
}
if (name == "Id" || name == "SerialNum" || name == "ProductType" || name == "ProductCode" || name == "ScreenCode" || name == "MainPanelCode" || name == "SamplePanelCode" || name == "CreatedTime" || name == "TotalStatus")
{
continue;
}
gridColumn.AppearanceCell.Font = new System.Drawing.Font("微软雅黑", 11.25F);
gridColumn.AppearanceCell.ForeColor = System.Drawing.Color.White;
gridColumn.AppearanceCell.Options.UseFont = true;
gridColumn.AppearanceCell.Options.UseForeColor = true;
gridColumn.AppearanceCell.Options.UseTextOptions = true;
gridColumn.AppearanceCell.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center;
gridColumn.AppearanceHeader.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(30)))), ((int)(((byte)(78)))));
gridColumn.AppearanceHeader.Font = new System.Drawing.Font("微软雅黑", 11.25F, System.Drawing.FontStyle.Bold);
gridColumn.AppearanceHeader.Options.UseBackColor = true;
gridColumn.AppearanceHeader.Options.UseFont = true;
gridColumn.AppearanceHeader.Options.UseTextOptions = true;
gridColumn.AppearanceHeader.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center;
gridColumn.Caption = description;
gridColumn.FieldName = name;
gridColumn.MinWidth = 250;
gridColumn.Name = name;
gridColumn.OptionsColumn.AllowMerge = DevExpress.Utils.DefaultBoolean.False;
gridColumn.OptionsColumn.AllowMove = false;
gridColumn.OptionsColumn.AllowSort = DevExpress.Utils.DefaultBoolean.False;
gridColumn.OptionsColumn.ReadOnly = true;
gridColumn.OptionsFilter.AllowFilter = false;
gridColumn.VisibleIndex = visibleIndex;
this.gridView_SearchResult.Columns.Add(gridColumn);
visibleIndex++;
}
}
}
}