WPF中自动定时刷新
wpf第一次用,为了定时刷新这个页面,也是费了我老大的功夫了,皇天不负有心人,最终还是给它弄出来了,话不多说,直接上代码。
//定时器 private System.Timers.Timer timerNotice = null;
//定时刷新页面
private void TimeRefresh_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
double countTime = 0; string timeStr = this.TimeRefreshRCB.SelectionBoxItem.ToString();
if ("关闭自动刷新".Equals(timeStr))
{
if (timerNotice != null) { timerNotice.Stop();
picTour.time.Visibility = Visibility.Hidden;
}
}
if ("开启".Equals(timeStr))
{
if (timerNotice != null)
{
timerNotice.Stop();
}
countTime = 60 * 60 * 1000;
timerNotice = null;
picTour.time.Visibility = Visibility.Visible;
}
if(!"关闭自动刷新".Equals(timeStr) && timerNotice == null)
{
QueryData();
timerNotice = new System.Timers.Timer();
picTour.PicDate2.DateTimeText = staticVar.showTime.ToString();
timerNotice.Elapsed += new System.Timers.ElapsedEventHandler((o, eea) =>
{
QueryData();
});
timerNotice.Interval = countTime; timerNotice.Start();
}
}
其实代码写出来不难,想的过程比较复杂,QueryData()是执行查询页面数据的方法,需要强调的是这里QueryData()必须是静态方法,TimeRefresh_SelectionChanged()是一个RadComboBox选择下拉框,你可以选择需要定时刷新的间隔。