之前完成異步調用我有一個使用WCF Silverlight應用程序,我想作一個WCF調用之前用戶控件加載,這樣我可以有autocompletebox使用數據加載一些數據。有關如何完成此任務的任何建議?如何加載Silverlight應用程序
1
A
回答
1
不知道你的用戶界面將是適合使用的加載指示器或進度條。如果您可以使用加載指示符,那麼在異步調用進行時顯示忙/加載指示符可能是一個很好的選擇。這將禁止用戶在從WCF服務中檢索數據時單擊下拉列表或任何其他控件。
0
您可以在App.xaml.cs
文件的Application_Startup()
方法中執行異步調用,並在異步回調中設置RootVisual
而不是在Application_Startup()
中執行異步調用。
+0
使用這種方法,如果我想將我的自動完成框在我的usercontrol上掛接到從WCF調用返回的數據,我該怎麼做?用戶控件的實例尚未創建。 – John
0
在Silverlight中所有的WCF服務調用是異步的。我學會了使用Lambdas和一個非常有用的類Action(這是一個事件和委託的包裝)。 使用應用程序啓動作爲RobSiklos建議將很好的顯示控制之前得到它。這顯示了也可以在userControl加載的事件內部工作的代碼,其中包含加載覆蓋圖(您可以使用邊界以居中的文本覆蓋整個應用程序或Silverlight工具包控件)。這種方法會給用戶更直接的反饋,特別是如果您的數據服務呼叫需要更長的時間。
public MyUserControl : UserControl
{
public MyUserControl()
{
this.Loaded += new RoutedEventHandler(View_Loaded);
}
void View_Loaded(object sender, RoutedEventArgs e)
{
// start showing loading overlay
MyService service = new Service(...);
service.GetDataCompleted += (o, args) =>
{
var data = args.Results;
// hide loading overlay
}
}
}
相關問題
- 1. Silverlight應用程序不會加載
- 2. 加載Metrolight的Silverlight應用程序IE
- 3. 如何加密silverlight應用程序的下載?
- 4. 問題關於Silverlight和如何應用程序加載
- 5. Silverlight:如何部署Silverlight應用程序?
- 6. 如何以編程方式卸載Silverlight 4 OOB應用程序
- 7. 在Winforms應用程序中承載Silverlight應用程序
- 8. 如何從Web應用程序加載iPhone應用程序
- 9. 如何在ajax應用程序中加載Angularjs應用程序?
- 10. 如何從另一個Silverlight應用程序調用Silverlight應用程序
- 11. 負載測試Silverlight應用程序
- 12. 從silverlight應用程序下載文件
- 13. 如何從另一個silverlight應用程序啓動silverlight應用程序
- 14. 如何將Silverlight 5 RC應用程序轉換爲Silverlight 5應用程序?
- 15. 如何使用WebClient將XML數據加載到Silverlight應用程序中?
- 16. Silverlight應用程序
- 17. 如何測試Silverlight應用程序?
- 18. 如何佈置Silverlight應用程序?
- 19. 如何發佈silverlight應用程序
- 20. 如何調試silverlight應用程序?
- 21. 如何保護Silverlight應用程序
- 22. 如何測試Silverlight應用程序
- 23. 如何從Silverlight應用程序
- 24. 如何將COM引用添加到Silverlight應用程序
- 25. 如何在C#應用程序中添加silverlight引用
- 26. 向Silverlight應用程序添加資源
- 27. 在WP7 Silverlight應用程序和轉換中加載數據
- 28. Silverlight應用程序訪問SharePoint 2010數據未加載
- 29. 加載Silverlight應用程序時顯示背景圖像
- 30. presentationcore無法加載到silverlight應用程序
這種方法似乎最簡單。我扔了一個busyindicator並將其設置爲true,運行異步調用,並將busyindicator設置爲false。爲我的需求工作得很好。謝謝。 – John