如何在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. 自定义对话框不显示 - Android
- 3. PyQt4自定义对话框不显示
- 4. 显示自定义对话框
- 5. Android - 从另一个自定义对话框显示自定义对话框
- 6. 我如何显示TActionMainMenuBar组件的自定义对话框?
- 7. 如何使自定义警报对话框正确显示
- 8. 如何从函数显示自定义对话框?
- 9. 如何显示自定义关闭对话框?
- 10. 如何从Callisto WinRT工具包显示自定义对话框?
- 11. 如何在android中显示自定义对话框
- 12. 如何在按钮上单击显示自定义对话框
- 13. 如何制作自定义对话框,每天显示一次
- 14. 如何自定义jquery移动对话框显示?
- 15. 如何从函数显示自定义对话框?
- 16. Android:如何从线程显示自定义对话框
- 17. 如何将页边距设置为自定义对话框?
- 18. 自定义对话框成为Android的
- 19. 自定义微调不显示自定义对话框返回的值
- 20. 如何自定义对话框?
- 21. 如何关闭自定义对话框
- 22. 如何自定义FACEBOOK对话框?
- 23. 如何自定义对话框
- 24. 如何创建自定义对话框
- 25. 如何在自定义对话框
- 26. 如何自定义对话框宽度?
- 27. wpf - 自定义UserControl不显示在DataGrid
- 28. 如何强制PropertyGrid显示特定属性的自定义对话框?
- 29. onActivityResult中的自定义对话框显示错误
- 30. xamarin.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