我正在尝试加载图标,只要点击图标,它就会调用以下处理程序:
private void refresh_btn_Tap(object sender, System.Windows.Input.GestureEventArgs e)
{
refresh_btn.Visibility = System.Windows.Visibility.Collapsed;
loading_icon.Visibility = System.Windows.Visibility.Visible;
refreshMix();
}
private void refreshMix()
{
...
refresh_btn.Visibility = System.Windows.Visibility.Collapsed;
loading_icon.Visibility = System.Windows.Visibility.Visible;
}
但是,在调用refreshMix()之前更改图标可见性后,视图似乎没有自动重新加载。有没有办法强制页面重新加载?
答案 0 :(得分:1)
你可能在UI线程的refreshMix()
做了一些冗长的工作,对吧?这在后台线程和UI线程中可以自由更新页面。
答案 1 :(得分:1)
您需要在可见之前设置折叠:
control.Visibility = System.Windows.Visibility.Collapsed;
control.Visibility = System.Windows.Visibility.Visible;
答案 2 :(得分:0)
在Silverlight中,没有页面或视图重新加载的概念。当您更改任何可视元素的属性时,它将在下次渲染时反映在屏幕上。