【问题标题】:Constraining a MessageDialog to be more petite将 MessageDialog 限制为更娇小
【发布时间】:2012-10-09 04:57:41
【问题描述】:

在查看示例 Windows Store Bing 应用程序“bingPushpin”时,我看到以下代码:

private async void pushpinTapped(object sender, Windows.UI.Xaml.Input.TappedRoutedEventArgs e)
{
    MessageDialog dialog = new MessageDialog("Hello from Seattle.");
    await dialog.ShowAsync();
}

...导致“MessageDialog”传播到整个框架。

这肯定不是 Windows 应用商店(NEE “Metro”)的做法。如何指定 MessageDialog 占用的空间不超过必要的空间?

【问题讨论】:

    标签: windows-8 microsoft-metro bing-maps windows-store-apps


    【解决方案1】:

    宽度始终占据客户区,高度取决于需要显示的文本量。

    Designing a Message Dialog

    【讨论】:

    • 这似乎是一种奇怪的做法; “使用足够的空间”似乎比“占用所有空间”更好
    • 我的看法是,Windows 8 设计背后的核心理念之一是最终用户体验的一致性。毫无疑问,这是“不同的”,但我也想到有多少次我错过了在传统窗口中看到模式对话框,因为它们没有命令或一致的存在。正如另一个答案所表明的那样,弹出窗口也可以为您提供更多个性。
    • 在这种特殊情况下,我会说这绝对是矫枉过正的情况;我很惊讶 MS 有一个看起来如此……不雅(YMMV)的半官方示例应用程序。地图看起来很棒,但是超大的 MessageDialog?不,这对我不起作用。
    【解决方案2】:

    您可以查看 Callisto Control Toolkit 中提供的 Flyout 控件:https://github.com/timheuer/callisto

    【讨论】:

    • 感谢您的链接;我想知道它是否会被扩展,或者至少会更新——在电子时代,5 月是很久以前的事了。
    猜你喜欢
    • 2021-08-25
    • 2013-02-15
    • 1970-01-01
    • 2014-07-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-26
    • 2014-11-27
    相关资源
    最近更新 更多