实现多ComboBox复杂查询 使用ComboBoxDisplay Value属性
首先创建一个类
class ComboBoxItem
{
public string Text { get; set; }
public object Value { get; set; }
//这个方法必须要有没有的话ComboBox下拉能正常显示
public override string ToString()
{
return Text;
}
}
初始化ComboBox控件 一定要把这个方法
InitializeControls() 放到构造函数里 如
public Filter()
{
InitializeComponent();
InitializeControls();
}
public void InitializeControls()
{ //CmbAudit 赋值方法
CmbAudit.Items.Add(new ComboBoxItem
{
Text = "全部",
Value = -
}); CmbAudit.Items.Add(new ComboBoxItem
{
Text = "未审核",
Value =
});
CmbAudit.Items.Add(new ComboBoxItem
{
Text = "已审核",
Value =
});
CmbAudit.SelectedIndex = ;
//作废赋值 CmbFCancellation.Items.Add(new ComboBoxItem
{ Text="正常",
Value =
});
CmbFCancellation.Items.Add(new ComboBoxItem
{
Text="已作废",
Value=
});
CmbFCancellation.Items.Add(new ComboBoxItem
{
Text = "全部",
Value=-
});
//状态赋值
CmbCloseed.Items.Add(new ComboBoxItem
{
Text = "关闭",
Value=
});
CmbCloseed.Items.Add(new ComboBoxItem
{
Text = "未关闭",
Value =
});
CmbCloseed.Items.Add(new ComboBoxItem
{
Text = "全部",
Value = -
});
}
/// <summary>
/// 获取条件搜索的单据头集合
/// </summary>
/// <param name="txt">条件</param>
/// <returns>DataTable</returns>
public static DataTable Gettable(string FiterId,int auditFlag, int ZuoF,int FCloseed )
{ DataTable tb = new DataTable();
List<SqlParameter> parametertemp = new List<SqlParameter>(); //定义泛型集合
string queryText = @"select top 200
v1.FDate as FDateTime,
u1.FQty as FCount,
t25.FName as Pre,
t17.FShortNumber as GuiG,
v1.FInterID AS FInterID,
u1.FEntryID AS FEntryID,
case when v1.FCheckerID>0 then 'Y' when v1.FCheckerID<0 then 'Y' else '' end AS FCheck,
v1.Fdate AS Fdate,
t4.FName AS FCustIDName,
v1.FBillNo AS FBillNo,
t11.FName AS FDeptIDName,
t12.FName AS FEmpIDName,
t17.Fname AS FItemName,
u1.Fauxqty AS Fauxqty
from SEOutStock v1 INNER JOIN SEOutStockEntry u1 ON v1.FInterID = u1.FInterID AND u1.FInterID <>0
INNER JOIN t_Organization t4 ON v1.FCustID = t4.FItemID AND t4.FItemID <>0
LEFT OUTER JOIN t_Stock t9 ON u1.FStockID = t9.FItemID AND t9.FItemID <>0
LEFT OUTER JOIN t_Department t11 ON v1.FDeptID = t11.FItemID AND t11.FItemID <>0
LEFT OUTER JOIN t_Emp t12 ON v1.FEmpID = t12.FItemID AND t12.FItemID <>0
INNER JOIN t_Currency t15 ON v1.FCurrencyID = t15.FCurrencyID AND t15.FCurrencyID <>0
INNER JOIN t_ICItem t17 ON u1.FItemID = t17.FItemID AND t17.FItemID <>0
INNER JOIN t_MeasureUnit t20 ON u1.FUnitID = t20.FItemID AND t20.FItemID <>0
LEFT OUTER JOIN t_MeasureUnit t25 ON t17.FUnitID = t25.FMeasureUnitID AND t25.FMeasureUnitID <>0
LEFT OUTER JOIN t_MeasureUnit t500 ON t17.FSaleUnitID = t500.FItemID AND t500.FItemID <>0
LEFT OUTER JOIN t_Currency t504 ON v1.FCurrencyID = t504.FCurrencyID AND t504.FCurrencyID <>0
LEFT OUTER JOIN t_MeasureUnit t506 ON t17.FSecUnitID = t506.FItemID AND t506.FItemID <>0 where 1=1 ";
//单号和供应商
if (!string.IsNullOrEmpty(FiterId))
{
queryText += " and v1.FBillNo like '%'+@FiterId or t4.FName like '%'+@FiterId+'%'";
parametertemp.Add(new SqlParameter("@FiterId", FiterId));
}
//全部 -1
//审核 1,未审核 0
if(auditFlag>=)
{
queryText += " and v1.FStatus = @auditFlag";
parametertemp.Add(new SqlParameter("@auditFlag", auditFlag)); }
//全部-1
//作废1,未作废0
if (ZuoF>=)
{
queryText += " and v1.FCancellation = @Zuofei";
parametertemp.Add(new SqlParameter("@Zuofei", ZuoF));
} if (FCloseed>=)
{
queryText += " and v1.FStatus = @FCloseed";
parametertemp.Add(new SqlParameter("@FCloseed", FCloseed));
}
//时间
if (FTime==1)
{
queryText += " and v1.FDate = CONVERT(varchar(10), GETDATE(), 23) ";
}
if (FTime==2)
{
queryText += " and datediff(week,v1.FDate,getdate())=0 ";
}
if (FTime==3)
{
queryText += " and datediff(month,v1.FDate,getdate())=0 ";
}
SqlParameter[] parameters = parametertemp.ToArray();
tb = ExecuteDBQueryWithParameters(queryText, parameters);
return tb;
}
/// <summary>
/// 数据库查询动态参数配制方法
/// </summary>
/// <param name="query">带参数查询语句</param>
/// <param name="parameters">动态参数列表</param>
/// <returns></returns>
private static DataTable ExecuteDBQueryWithParameters(string query,params SqlParameter[] parameters)
{
DataTable dt = new DataTable();
string constr = ConfigurationManager.ConnectionStrings["constr"].ToString();
using (SqlConnection Connection = new SqlConnection(constr))
{
SqlCommand SqlCmd = new SqlCommand(query, Connection);
//params 的意思就是允许传空参数组
foreach (SqlParameter item in parameters)
{
SqlCmd.Parameters.Add(item);
} SqlDataAdapter dpt = new SqlDataAdapter(SqlCmd);
dpt.Fill(dt);
}
return dt;
}
private button1_click ( objet sender button_click EverAges e)
{
this.gridcontrol.datasource=sqlhelp.getdata(gys.Text,(int)((comboitems)cmbcheck.selecteditems).value,后续参数不写了) }
一般类型,都是继承自System.Object类,默认情况下,object类的ToString方法会返回当前类的类型的字符串表达形式。但也有例外!! DateTime,它就重写ToString方法,DateTime类型的实例的ToString方法返回的就是一个日期的字符串表达形式,而不是DateTime类型的字符串表达形式。 还有一种使用的情况就是,当我们有了一个Student类时,我们使用Console.WriteLine(student),将会输出 "命名空间.Student"。这是我们不想要的,我们想要输出时显示这个学生的名字,那么我们就需要重写ToString方法。 public override string ToString()
{
reutrn "张三";
实现多ComboBox复杂查询 使用ComboBoxDisplay Value属性的更多相关文章
- 【EasyUI】combotree和combobox模糊查询
这里说的模糊查询指在输入框输入,然后自动在下拉框中显示匹配结果,类似Google搜索提示 EasyUI库已经实现了combobox的查询过滤功能,但只能从头匹配,原因是EasyUI库的代码限制: fi ...
- Winform如何实现ComboBox模糊查询
最近朋友问了一个关于Winform实现ComboBox模糊查询的知识点,自己好久没有搞Winform了,就上手练了一下,废话不多说,进入正题. 前台设计: 前台就是一个简单的Form窗体+一个Comb ...
- 4.4、Libgdx使用方法查询运行环境相关属性
(原文:http://www.libgdx.cn/topic/46/4-4-libgdx%E4%BD%BF%E7%94%A8%E6%96%B9%E6%B3%95%E6%9F%A5%E8%AF%A2%E ...
- Ext ComboBox 动态查询
Ext中的combobox有属性typeAhead:true 可以实现模糊匹配,但是是从开始匹配的,如果需要自定的的匹配,则需要监听beforequery方法,实现自己的匹配查询方法: var gfx ...
- easyui combobox模糊查询
用easyui框架开发的攻城狮恐怕都遇到过这样一个问题,就是在新增页面combobox下拉框需要支持模糊查询,但是输入不是combobox中Data里面的值的时候,点击保存,依然是可以新增进去的,这样 ...
- 实现combobox模糊查询的时候报错 InvalidArgument=“0”的值对于“index”无效
因为要对combobox实现模糊查询,因为系统实现的匹配只能从左到右进行匹配,所以利用两个list来进行模糊匹配,主要代码如下: List<string> listOnit = new L ...
- MaterialDesign Or ComboBox 联动查询
<ComboBox Width="200" Height="30" x:Name="ComboxName" Text="{B ...
- 利用Powershell查询AD中账号属性
标签:AD账号信息 最后登录时间 最后修改密码.SID 账号SID 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://hubuxcg ...
- Django聚合查询 orm字段及属性
目录 一 聚合查询 1. 级联 级联删除 级联更新 2. 聚合函数 使用 aggregate 使用场景 3. 分组查询 语法 使用 annotate 代码 4. F与Q查询 F查询 Q查询 二 ORM ...
随机推荐
- Binder学习笔记(八)—— 客户端如何组织Test()请求 ?
还从客户端代码看起TestClient.cpp:14 int main() { sp < IServiceManager > sm = defaultServiceManager(); / ...
- 「BZOJ 3270」博物馆「高斯消元」
应该算高斯消元经典题了吧. 题意:一个无向连通图,有两个人分别在\(s,t\),若一个人在\(u\),每一分钟有\(p[u]\)的概率不动,否则随机前往一个相邻的结点,求在每个点相遇的概率 题解: 首 ...
- I - 一次元リバーシ / 1D Reversi(水题)
Problem Statement Two foxes Jiro and Saburo are playing a game called 1D Reversi. This game is playe ...
- Automake基本用法
一. 确认你的系统安装有GNU的如下软件: 1. automake2. autoconf3. m44. perl5. 如果你需要产生共享库(shared library)则还需要GNU Libtool ...
- P1505 [国家集训队]旅游
\(\color{#0066ff}{题 目 描 述}\) Ray 乐忠于旅游,这次他来到了T 城.T 城是一个水上城市,一共有 N 个景点,有些景点之间会用一座桥连接.为了方便游客到达每个景点但又为了 ...
- NOIP后省选集训前文化课划水记
划水划了一个多月,文化课没啥长进还他妈累死了...--ghj1222 11.11(NOIP Day2) 师傅开车开得很快,晚上8:00多就到了二狱 晚上听毒瘤班主任swh讲了半节语文,我:黑人问号.j ...
- IE兼容css3圆角的htc解决方法
IE兼容css教程3圆角的htc解决方法 现在css3的border-radius属性可以很方便的实现圆角功能,对网站前台人员无疑是一件喜事,但悲剧的是IE6/7/8并不支持,让我们弃新技术不用,是不 ...
- Vscode 配置 maven debug
# maven.cmd 上方设置此变量 set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address= ...
- C语言中变量的存储类型
在C语言中,对变量的存储类型说明有以下四种: auto 自动变量register 寄存器变量extern 外部变量static 静态变量 自动变量和寄存器变量属于动态存储方式,外部变量和静态变 ...
- Codeforce-A-Two distinct points(暴力)
output standard output You are given two segments [l1;r1][l1;r1] and [l2;r2][l2;r2] on the xx-axis. ...