【发布时间】:2013-12-17 22:05:26
【问题描述】:
我正在尝试编写一些代码来编写基于多个条件的过滤器。在我的应用程序中,我有 2 个日期过滤器和 2 个文本过滤器。 1. 是否可以使用绑定源过滤器属性过滤多个条件?
如果不是这样,我该怎么做呢?
下面是我的代码
private void btnFilter_Click(object sender, EventArgs e)
{
string strFilter = "";
string strDateFilter = "Date >" + String.Format("{0:MM/dd/yyyy}", dtBgnDate.Value) + " AND Date < " + String.Format("{0:MM/dd/yyyy}", dtEndDate.Value);
string strNameFilter;
string strAcctFilter;
strFilter = strDateFilter;
if (!txtLName.Text.Trim().Equals(""))
{
strNameFilter = "LName like '%" + txtLName.Text + "%'";
strFilter = strFilter + " AND " + strNameFilter;
}
if (!txtAcctNum.Text.Trim().Equals(""))
{
strAcctFilter = "AcctNum = " + txtAcctNum.Text;
strFilter = strFilter + " AND " + strAcctFilter;
}
BindingSource bsource = new BindingSource();
bsource.Filter = strFilter;
bsource.DataSource = gvData.DataSource;
}
代码抛出如下异常
EvaluatedException: Cannot perform '>' operation on System.DateTime and Double
【问题讨论】:
-
你的代码有什么问题?它会过滤,还是抛出任何异常?
-
我在原消息中添加了异常
标签: c# datagridview bindingsource