我正在尝试使用其他自定义搜索字段(如文本框和复选框)在两个日期之间实现自定义搜索,但是当我在搜索条件中使用日期时间选择器时,我可以获得准确的搜索,但是第二次日期术语将被使用,即使我没有使用它这是因为我使用> dtp_fromDate.Focused 像这样:
if (dtp_FromDate.Focused)
{
tmpPersons = ctx.People.Where(c => c.InsertDate >= dtp_FromDate.Value).ToList();
}
if (dtp_ToDate.Focused)
{
tmpPersons=ctx.People.Where(c => c.InsertDate >= dtp_ToDate.Value).ToList();
}
我的问题是:
1#是否有办法在搜索结果与视图绑定后失去焦点?类似于:dtp_FromDate.Focused=false
2#是否有更好的方法在搜索条件中使用DateTimePicker比我正在使用的更好?
感谢。
PS:我在网上搜索了很多,但没有结果可以满足!
答案 0 :(得分:1)
我不确定你在问什么,但我确实看到了这个:
if (dtp_ToDate.Focused)
{
tmpPersons=ctx.People.Where(c => c.InsertDate >= dtp_FromDate.Value).ToList();
}
这是从dtp_FromDate
再次查询 - 你是不是应该从dtp_ToDate
开始,就像这样?
if (dtp_ToDate.Focused)
{
tmpPersons=ctx.People.Where(c => c.InsertDate <= dtp_ToDate.Value).ToList();
}
答案 1 :(得分:1)
而不是依赖焦点,如何检查控件是否有值?
在您发布的代码中实现它的方式意味着您可以设置起始日期或日期,不是吗?
同样在日期查询中,它应该是&lt; =
如果我理解了你的问题,这应该可以解决你的问题。答案 2 :(得分:0)
焦点:您可以尝试在搜索后将焦点设置为其他内容 喜欢:abc.Focus();