WPF 顯示模態視窗和窗體

2021-09-06 13:45:26 字數 795 閱讀 6589

《wpf程式設計寶典——使用c# 2008和.net 3.5(第2版)》第25章與windows窗體的互操作,本章將介紹用於整合windows窗體和wpf內容的不同策略。還將分析如何在應用程式中使用兩種型別的視窗,並且還將研究更加精彩的在乙個視窗中混合來自兩個平台內容的技巧。但是在深入分析wpf和windows窗體之間的互操作之前,先後退一步,分析應當(或不應當)使用wpf互操作功能的原因是值得的。本節為大家介紹顯示模態視窗和窗體。

25.2.3  顯示模態視窗和窗體

從wpf應用程式中顯示模態窗體很簡單。可以使用與在windows窗體專案中相同的**。例如,如果有乙個名稱為form1的窗體類,可以使用下面的**以模態的方式顯示這個視窗:

form1 frm = new form1();  

if (frm.showdialog() == system.windows.forms.dialogresult.ok)  

您可能已注意到,form.showdialog( )方法的工作方式和wpf的windows.showdialog( )方法(在第8章中介紹過該方法)的工作方式稍微不同。form.showdialog( )方法返回dialogresult列舉,而windows.showdialog( )方法返回true、false或null。

相反的技巧-- 從窗體中顯示乙個wpf視窗-- 同樣很容易。同樣,可以簡單地與windows類的公有介面進行互動,其餘的問題由wpf負責解決:

window1 win = new window1();  

if (win.showdialog() == true)   

C 模態視窗和非模態視窗

c 視窗對話方塊一般分為兩種型別 模態型別 modal 與非模態型別 modeless 所謂模態對話方塊,就是指除非採取有效的關閉手段,使用者的滑鼠焦點或者輸入游標將一直停留在其上的對話方塊。非模態對話方塊則不會強制此種特性,使用者可以在當前對話方塊以及其他視窗間進行切換下例中的form1使用模態方...

QT 視窗的顯示與模態視窗

我們知道,在qt裡,只要建立乙個視窗的類,再呼叫qwidget基類的.show 方法就可以使乙個視窗顯示。以qwidget類來作說明 mywidget.cpp 主類的實現 include mywidget.h include ui mywidget.h include include include...

父窗體彈出模態視窗 並接收模態視窗返回值的處理

1.父類視窗的關鍵處理 開啟模態視窗函式 function featureselects datatype,title 返回值 的處理 functionselectfeaturescallback returnval else if arg 0 2 else 2.模態視窗關鍵處理 選中之前已選的商品...