e.Form.Controls("rb-qb").Checked = True
e.Form.Controls("dp-drq").Value = Date.Today
Dim a As Date = e.Form.Controls("dp-drq").Value
Dim a1 As Date = a.AddDays( - 60)
e.Form.Controls("dp-crq").Value = a1
Dim crq As WinForm.DateTimePicker = e.Form.Controls("dp-crq")
Dim drq As WinForm.DateTimePicker = e.Form.Controls("dp-drq")
Tables("备件出入库").Filter = "[出入库日期] >= #" & crq.Value & "#" & "and [出入库日期] <= #" & drq.Value & "#"
e.Form.Controls("b-rqsx").Text = "筛选中"
老师们在AfterLoad事件中写这个代码给日期赋值会使窗口打开非常慢,有什么好方法吗?
给日期赋值不会导致慢的,可能是筛选引起的,或者是触发了控件的什么事件
找到问题原因了,是赋值时会触发控件的筛选,还有个问题:怎么在打开窗口(初始化)时控件赋值 不触发控件筛选!
写代码没必要那么啰嗦:Dim a As Date = Date.Today
Dim a1 As Date = a.AddDays( - 60)
e.Form.Controls("b-rqsx").Text = "筛选中"
Tables("备件出入库").Filter = "[出入库日期] >= #" & a1 & "#" & "and [出入库日期] <= #" & a & "#"
e.Form.Controls("rb-qb").Checked = True
e.Form.Controls("dp-drq").Value = a
e.Form.Controls("dp-crq").Value = a1
您就不能先筛选后给控件赋值试试。
[此贴子已经被作者于2025/3/21 13:47:34编辑过]
搞明白了!因为日期输入框有两个 都有很多的代码,赋值后会连续触发两个控件的代码,导致打开速度变慢