UWP Dialog就像使用C#的图像

时间:2016-02-02 09:11:36

标签: c# windows uwp windows-10-universal

I want to display a dialog like this

我试过Flyout:

<AppBarButton Label="About Us" Tapped="appbarButton_Click">
    <AppBarButton.Icon>
        <BitmapIcon UriSource="ms-appx:///Assets/Icons/info.png"/>
    </AppBarButton.Icon>
    <AppBarButton.Flyout>
        <Flyout >
            <TextBlock Text="Hello User" HorizontalAlignment="Stretch" VerticalAlignment="Center"/>
        </Flyout>
    </AppBarButton.Flyout>
</AppBarButton>

然而,弹出窗口始终位于按钮附近。所以我不能使用它。

我试过了MessageDialog。但是它们不占用全屏宽度。他们似乎也没有选择调整宽度。

var dialog = new Windows.UI.Popups.MessageDialog("Hello User");
await dialog.ShowAsync();

我已将ContentControlContentDialog归为零。

var cd = new ContentDialog();
cd.HorizontalAlignment = HorizontalAlignment.Stretch;
cd.Content = "Hello User";
await cd.ShowAsync();

然而,即使将水平对齐设置为拉伸对话框,也只占据屏幕的一部分。

我想向用户显示一条消息,并在一个对话框中占据整个屏幕width,部分显示height(如图中所示)。如果用户在对话框外单击,则对话框将关闭。

2 个答案:

答案 0 :(得分:0)

您可以为此创建用户控件。设置它的宽度和高度以覆盖全屏并设置对话框或其他任何内容。

答案 1 :(得分:0)

我遇到了同样的问题,并使用callisto中的CustomControl解决了这个问题。您不需要整个工具包,只需要以下类:

  • DynamicTextBlock
  • ColorContrastConverter
  • CustomDialog
  • CustomControlGeneric

从那里,你可以采取你喜欢的每一个控制,并将其放入你的对话框,例如: enter image description here