如何在C#/ WPF(.NET 3.5)中將自定義UserControl
顯示爲對話框?如何將自定義的UserControl顯示爲對話框?
回答
將它放入Window並致電Window.ShowDialog。
private void Button1_Click(object sender, EventArgs e)
{
Window window = new Window
{
Title = "My User Control Dialog",
Content = new MyUserControl()
};
window.ShowDialog();
}
據我所知你不能這樣做。如果你想在對話框中顯示它,那很好,只需創建一個只包含你的UserControl的新窗口,並在創建該窗口的一個實例後調用ShowDialog()。
編輯: 的UserControl
類不包含的方法ShowDialog的,所以你想做什麼,其實是不可能的。
然而,這就是:
private void Button_Click(object sender, RoutedEventArgs e){
new ContainerWindow().ShowDialog();
}
如果 'sixlettervariables' 答案是修改的話,它的工作原理
private void button1_Click (object sender, RoutedEventArgs e)
{
Window window = new Window
{
Title = "My User Control Dialog",
Content = new UserControl (),
Height = 200, // just added to have a smaller control (Window)
Width = 240
};
window.ShowDialog ();
}
您忘記了'Background = Brushes.Purple';沒有這個,它就無法工作。 – 2013-05-29 15:36:35
Window window = new Window
{
Title = "My User Control Dialog",
Content = new OpenDialog(),
SizeToContent = SizeToContent.WidthAndHeight,
ResizeMode = ResizeMode.NoResize
};
window.ShowDialog();
有一個像我的一個神奇的工作。 它可以作爲模態對話框嗎?
答:它的ShowDialog自使它作爲模態對話框......
SizeToContent非常有用。謝謝。 – honzakuzel1989 2017-04-07 14:57:01
namespace System.Window.Form
{
public static class Ext
{
public static DialogResult ShowDialog(this UserControl @this, string title)
{
Window wind = new Window() { Title = title, Content = @this };
return wind.ShowDialog();
}
}
}
它的使用也許就這麼簡單UserControlInstance.ShowDialog()。 更好的自定義實現將通過擴展Window類並使用設計器和代碼對其進行自定義以獲得任何功能。
不錯的例子,只是爲了WPF(System.Windows.Window.ShowDialog())返回類型應該是bool? (可空類型) – 2016-08-22 05:56:43
- 1. 自定義對話框不顯示
- 2. 自定義對話框不顯示
- 3. 自定義對話框不顯示 - Android
- 4. Android自定義對話框不顯示
- 5. 顯示自定義對話框
- 6. PyQt4自定義對話框不顯示
- 7. showDialog不顯示自定義對話框
- 8. Android - 從另一個自定義對話框顯示自定義對話框
- 9. 顯示自定義對話框而不是「ANR對話框」
- 10. 自定義對話框不會顯示爲特定的
- 11. 如何在特定位置顯示自定義對話框?
- 12. 如何在android中的自定義對話框中顯示webview?
- 13. 我如何顯示TActionMainMenuBar組件的自定義對話框?
- 14. 如何使用PyQt和QtDesigner來設計自定義對話框來顯示自定義對話框?
- 15. 如何顯示自定義對話框,在中心
- 16. 如何在android中顯示自定義對話框
- 17. 如何顯示自定義關閉對話框?
- 18. Android:如何從線程顯示自定義對話框
- 19. 如何使自定義警報對話框正確顯示
- 20. 如何從Callisto WinRT工具包顯示自定義對話框?
- 21. 如何自定義jquery移動對話框顯示?
- 22. 如何從函數顯示自定義對話框?
- 23. 如何在隨機時間顯示自定義對話框android?
- 24. 如何在按鈕上單擊顯示自定義對話框
- 25. 如何從函數顯示自定義對話框?
- 26. 如何製作自定義對話框,每天顯示一次
- 27. 如何將默認主題設置爲自定義對話框?
- 28. 如何將頁邊距設置爲自定義對話框?
- 29. 單擊微調框時顯示自定義對話框
- 30. 自定義對話框成爲Android的
我還發現設置SizeToContent = SizeToContent.WidthAndheight和ResizeMode = ResizeMode.NoResize是有幫助的,因此它可以讓用戶控制定義大小。 – 2009-08-11 18:49:11
我們如何使用'this.Close()'函數到這個UserControl對話框? – 2013-11-06 11:18:35
private void btnClose_Click(object sender,RoutedEventArgs e) { \t var parent = this.Parent as Window; \t if(parent!= null) \t { \t \t parent.DialogResult = true; \t \t parent.Close(); \t} } – 2016-08-22 07:08:13