下面是我的問題的簡短例子。 在功能的開始,我想改變一些視覺參數,例如隱藏窗口,使它變成紅色(「我的例子」),並且在函數結束時,我想把它放回去。 Somethig like mouse wait cursor for long-term function。 Somethig like mouse waiting for cursor for long-term function。當線程忙時WPF重繪窗口
是否有任何優雅的方式來使按鈕紅色之前函數OnButtonClick結束 - 方式以允許窗口消息循環來處理請求背景=紅色並聯方式並立即重繪窗口。
private void OnButtonClick(object sender, RoutedEventArgs e)
{
System.Windows.Media.Brush br = ((Button)sender).Background;
((Button)sender).Background = System.Windows.Media.Brushes.Red;
Mouse.OverrideCursor = Cursors.Wait;
Function(); //long-term function
Mouse.OverrideCursor = Cursors.Arrow;
((Button)sender).Background = br;
}
什麼是你的問題? – 2014-09-26 08:35:09
將'Function()'放入另一個線程中,例如使用'backgroundworker' – Bolu 2014-09-26 08:36:25