回答
你的控制必須位於一個窗口
Window Window = new Window();
// window has a single content
// here it is usercontrol1
// to have many controls, use an intermediary like Grid or Canvas or any Panel derived class
window.Content = usercontrol1;
在窗口被打開。
// modeless (non blocking) opening
window.Show();
或
// modal (blocking) opening
window.Showdialog();
問候
可能更容易將UserControl更改爲一個窗口(請參閱我的答案)比深層包裝UserControl兩層(WinForm> ElementHost> UserControl)更容易。更好地接觸孩子。 –
不能顯示UserControl
。將UserControl
更改爲Window
。
XAML:
<Window x:Class="WindowsFormsApplication1.MyWindow"
,而不是
<UserControl x:Class="WindowsFormsApplication1.UserControl1"
,並在您的代碼隱藏,更改
public partial class UserControl1 : UserControl
到
public partial class MyWindow: Window
現在您可以致電new MyWindow().Show();
。主要好處是您不會通過在其中添加Windows窗體對話框和ElementHost以及UserControl來使應用程序負擔過重。
這樣,您還可以從調用Windows窗體類訪問UserControl/Window的子項。
但UserControl不是一個窗口。不要用狗的名字命名貓!我同意,你可以忘記Usercontrol並直接創建一個窗口 –
@EmmanuelDURIN同意 - 以後可能會導致麻煩。懶惰的命名約定。更新了答案。 –
- 1. opeing形式,C#windows窗體
- 2. Windows窗體形式不看本地
- 3. 適用於WPF和Windows窗體的圖像表示形式
- 4. 在WPF窗體C中查看二維數組#
- 5. WPF或Windows窗體
- 6. 在Windows窗體或WPF
- 7. 顯示在WPF Windows窗體
- 8. 使用C#在Windows窗體中查看PDF
- 9. Windows窗體中BackgroundImage的位置形式
- 10. Windows窗體中的「iframes」形式
- 11. C#添加WPF按鈕到Windows窗體
- 12. 使用Windows窗體的WPF
- 13. 在Windows窗體中查找所有ContextMenuStrips形式
- 14. 窗體查看如何檢查模式
- 15. c#windows窗體
- 16. Windows窗體C#
- 17. Windows窗體中的圖形
- 18. 從Windows窗體到WPF
- 19. WPF與Windows窗體 - STAThread
- 20. WPF DataGrid與Windows窗體DataGridView
- 21. 集成WPF和Windows窗體
- 22. 共存Windows窗體和WPF
- 23. C#Windows窗體列表查看選定項目
- 24. C#窗體中的一種新形式
- 25. C#Windows窗體的設計模式
- 26. 如何使不具有標準的Windows窗體看看C#
- 27. Windows窗體按鈕在C#
- 28. Windows窗體圖形閃爍
- 29. Windows窗體combobox.SelectedItem,C#
- 30. 轉換Windows窗體的OnPaint等效WPF形狀
我只是再讀一遍這個問題的標題:你想混合使用WPF和Windows窗體技術嗎?如果是的話,UserControl是Windows窗體技術,Windows是Windows窗體,還是相反?如果不是,則標題應該更改 –
請您回答一下WPF/Windows窗體,以便可以根據需要更新帖子的標題。問候 –