我以完全信任的方式使用XBAP應用程序。當我點擊一個按鈕時,我需要關閉託管XBAP的瀏覽器。我怎樣才能做到這一點? Application.Currenty.ShutDown()
只關閉應用程序,使瀏覽器空白。如何從XBAP關閉瀏覽器?
4
A
回答
3
編輯: 我的錯誤,這裏是你的問題的一個話題 - http://social.msdn.microsoft.com/forums/en-US/wpf/thread/21c88fed-c84c-47c1-9012-7c76972e8c1c
和更具體的(此代碼需要完全信任安全設置)
using System.Windows.Interop;
using System.Runtime.InteropServices;
[DllImport("user32", ExactSpelling = true, CharSet = CharSet.Auto)]
private static extern IntPtr GetAncestor(IntPtr hwnd, int flags);
[DllImport("user32", CharSet = CharSet.Auto)]
private static extern bool PostMessage(IntPtr hwnd, int msg, IntPtr wparam, IntPtr lparam);
private void button1_Click(object sender, RoutedEventArgs e)
{
WindowInteropHelper wih = new WindowInteropHelper(Application.Current.MainWindow);
IntPtr ieHwnd = GetAncestor(wih.Handle, 2);
PostMessage(ieHwnd, 0x10, IntPtr.Zero, IntPtr.Zero);
}
1
這是不過它也關閉了所有的IE,包括任何公開的標籤e,但是如果您還執行Application.Current.Shutdown():在上面之後它會中止完全的IE關閉並關閉應用程序選項卡。
private void exitButton_Click(object sender, RoutedEventArgs e)
{
// This will Shut entire IE down
WindowInteropHelper wih = new WindowInteropHelper(Application.Current.MainWindow);
IntPtr ieHwnd = GetAncestor(wih.Handle, 2);
PostMessage(ieHwnd, 0x10, IntPtr.Zero, IntPtr.Zero);
// Singularly will just shutdown single tab and leave white screen, however with above aborts the total IE shutdown
// and just shuts the current tab
Application.Current.Shutdown();
}
5
相關問題
- 1. 如何防止在Web瀏覽器中關閉XBAP瀏覽器應用程序
- 2. 用XBAP直接瀏覽瀏覽器
- 3. 關閉瀏覽器
- 4. 如何在Liferay中關閉瀏覽器?
- 5. 如何在瀏覽器關閉
- 6. 如何用水豚關閉瀏覽器?
- 7. 如何使用C#關閉瀏覽器?
- 8. 如何檢測瀏覽器關閉?
- 9. 如何關閉瀏覽器窗口?
- 10. 如何關閉所有瀏覽器?
- 11. Dart:如何關閉瀏覽器窗口?
- 12. XMLHttpRequest如何在瀏覽器上關閉?
- 13. 如何關閉瀏覽器窗口
- 14. 關閉Web瀏覽器從Java程序
- 15. 鉻:當瀏覽器關閉
- 16. 餅乾關閉瀏覽器
- 17. 關閉瀏覽器警報
- 18. 在瀏覽器關閉
- 19. 關閉瀏覽器(PHP)
- 20. SetTimeout在瀏覽器關閉
- 21. 在瀏覽器關閉
- 22. 關閉瀏覽器事件
- 23. 使Web瀏覽器關閉
- 24. 瀏覽器關閉事件
- 25. 瀏覽器關閉和asp.net
- 26. XPages關閉瀏覽器
- 27. 如何在瀏覽器中關閉一個會話關閉Django
- 28. GWT:如何在關閉瀏覽器時關閉會話
- 29. 如果瀏覽器在asp.net中關閉,則從瀏覽器註銷?
- 30. 瀏覽器確認關閉:取消按鈕也關閉瀏覽器
+1,以補償不公平-1 ...這是一個很好的問題 – 2009-08-31 14:23:34