xamarin UWP中MessageDialog与ContentDialog的区别

时间:2023-03-09 13:21:21
xamarin UWP中MessageDialog与ContentDialog的区别

MessageDialog与ContentDialog的异同点解析:

相同点一:都是uwp应用上的一个弹窗控件。都能做为弹出应用。

相异点一:所在命名空间不同,MessageDialog在Windows.UI.Popups.MessageDialog下,而ContentDialog在Windows.UI.Xaml.Controls命名空间下,从这两个命名空间可以看出区别,ContentDialog是一个控件元素,即他是一个Control。而MessageDialog不是。

相异点二:MessageDialog的Content是一个string类型,这直接导致了MessageDialog不能自定义他的内部元素,限制为只能是一个字符串类型,而ContentDialg是一个Object类型,可以让我们自定义控件,在内部元素。这是ContentDialog相对于MessageDialog的优势。

相异点三:MessageDialog弹窗可以覆盖到App的标题栏,及弹窗后不允许操作关闭、最小化、最大化和返回功能,对应的ContentDialog则可以操作,由于可以操作标题栏,当有返回按钮的时候,导致使用ContentDialog的用户还可以操作界面,这里需注意使用,我们在弹出ContentDialog时应隐藏掉返回按钮。