0

如何在 Windows phone 8.1 消息对话框中将 Button 内容更改为 CamelCasing?

    private async void Button_Click(object sender, RoutedEventArgs e)
    {
        MessageDialog msg = new MessageDialog("Do you want to continue?");
        msg.Commands.Add(new UICommand("Ok", (command) => { }));
        msg.Commands.Add(new UICommand("Cancel", (command) => { }));
        await msg.ShowAsync();           
    }

在此处输入图像描述

我想将 ok 更改为 Ok 并将 cancel 更改为 Cancel。

4

3 回答 3

1

如果你想要一个自定义对话框,你需要使用不同的控件。MessageDialog 总是小写按钮以匹配系统样式,并且通常不可自定义。

如果您使用 ContentDialog 您可以相当广泛地自定义它,并且它不会尝试修复其按钮的大小写。您可能希望使用所需的内容创建自己的 ContentDialog 类(在 Add.New Item... 下有一个模板),但这里有一个快速的无内容示例:

ContentDialog cd = new ContentDialog();
cd.Title = "My Title";
cd.PrimaryButtonText = "CoNtInUe";
cd.SecondaryButtonText = "sToP";
await cd.ShowAsync();

另请注意,消息对话框的指南建议使用明确和特定的动词,而不是通用的 OK/Cancel。

于 2015-02-11T08:02:08.060 回答
0

像这样使用内容对话框:

在您的 xaml.xml 中添加此代码。

    <ContentDialog x:Name="AlertMessage" Background="#363636" IsSecondaryButtonEnabled="True" SecondaryButtonText="Cancel"  IsPrimaryButtonEnabled="True" PrimaryButtonText="Ok" >
        <ContentDialog.Content>
            <StackPanel Name="rootStackPanel" Height="Auto"  >
                <StackPanel Margin="0">
                    <StackPanel Margin="0,0,0,10" Orientation="Horizontal">
                        <TextBlock x:Name="HeadingText" x:FieldModifier="public" Style="{StaticResource ApplicationMessageBoxHeadingStyle}" Text="Alert"  />
                        <Image Margin="10,05,0,0" Source="/Assets/Images/alert.png" Width="35"></Image>
                    </StackPanel>
                    <TextBlock x:FieldModifier="public" x:Name="ContentText" Style="{StaticResource ApplicationMessageBoxErrorStyle}" Text="Are you sure you want to log off ?" />
                </StackPanel>
            </StackPanel>
        </ContentDialog.Content>
    </ContentDialog>

并在您的代码中这样调用:

    private void AppBarButton_Click(object sender, RoutedEventArgs e)
    {
        MessageBox();
    }
    private async void MessageBox()
    {
        ContentDialogResult LogoutDialog = await AlertMessage.ShowAsync();

        if (LogoutDialog == ContentDialogResult.Primary)
        {
            // User pressed Ok.
        }
        else
        {
            // User pressed Cancel or the back arrow.
            // Terms of use were not accepted.
        }
    }
于 2015-02-16T09:30:29.820 回答
-1

这是代码:

 CustomMessageBox messagebox = new CustomMessageBox()
 {
      Caption = "Do you want to continue?",
      LeftButtonContent = "Ok",
      RightButtonContent = "Cancel"
 };
于 2015-02-05T12:02:08.130 回答