/// <summary> /// 保存我的查询 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnSave_Click(object sender, EventArgs e) { try { if (!TestFilterCondition()) { return; } List <FilterInfo> lstFilter = new List <FilterInfo>(); for (int i = 0; i < panelParameter.Controls.Count; i++) { UserControlFindCondition control = panelParameter.Controls[i] as UserControlFindCondition; FilterInfo info = new FilterInfo(); info.OrderNo = i; info.FieldName = control.FieldName; info.DataValue = control.DataValue; if (m_queryResult != null) { info.DataType = m_queryResult.DataCollection.Tables[0].Columns[info.FieldName].DataType.Name; } else { info.DataType = control.DataType; } info.Logic = control.LogicSymbol; info._operator1 = control.Operator; info.LeftParentheses = control.LeftParentheses; info.RghtParentheses = control.RightParentheses; lstFilter.Add(info); } QueryFilterControl.SaveFilter(m_title, lstFilter); QueryFilterControl.Save(); MessageDialog.ShowPromptMessage("成功保存查询过滤条件!"); } catch (Exception exce) { MessageDialog.ShowErrorMessage(exce.Message); } }
/// <summary> /// 构造函数 /// </summary> /// <param name="title">标题</param> /// <param name="arrayFindFild">查找用的字段</param> /// <param name="findBusiness">要查询的业务</param> public FormFilterCondition(string title, string[] arrayFindFild, string findBusiness) { InitializeComponent(); SetStyle(ControlStyles.AllPaintingInWmPaint | ControlStyles.ResizeRedraw | ControlStyles.UserPaint | ControlStyles.OptimizedDoubleBuffer, true); UpdateStyles(); m_title = title; this.Text = title + this.Text; m_arrayFindFild = arrayFindFild; m_findBusiness = findBusiness; m_lstFilter = QueryFilterControl.GetFilterInfo(title); panelParameter.Controls.Clear(); panelTop.Height = 120; if (m_lstFilter != null) { foreach (var item in m_lstFilter) { UserControlFindCondition tmpControl = new UserControlFindCondition(m_arrayFindFild, this); tmpControl.LeftParentheses = item.LeftParentheses; tmpControl.FieldName = item.FieldName; tmpControl.Operator = item._operator1; tmpControl.DataType = item.DataType; tmpControl.DataValue = item.DataValue; tmpControl.RightParentheses = item.RghtParentheses; tmpControl.LogicSymbol = item.Logic; tmpControl.Parent = panelParameter; tmpControl.Dock = DockStyle.Bottom; panelTop.Height = panelTop.Height + tmpControl.Height; m_count++; tmpControl.Name = m_count.ToString(); m_lstControl.Add(tmpControl); } } }