WPF 现代 UI - 带图标的 DialogResult

WPF Modern UI - DialogResult with Icon

我的问题与 WPF 桌面应用程序的 Modern UI 模板有关。 我的目标是创建一个带有图标图像的 DialogResult

ModernDialog Dialog = new ModernDialog();
Dialog.Title = "DIALOG EXAMPLE";
Dialog.Buttons = new Button[] { Dialog.OkButton, Dialog.CancelButton};
Dialog.Content = "Testing a new DialogResult";
Dialog.ShowDialog();
//Dialog.Icon = ???;

上面的代码将创建以下 DialogResult window:

我正在寻找类似于 MessageBoxImage 值的内容:

我必须使用 DialogResult 来使内容适合我的 现代 UI 界面...关于如何插入图像的任何想法 file/SVG ?

谢谢。

Icon 属性 用于设置任务栏中 window 的图像它不是那个意思,要实现你正在寻找的东西,你需要

  • 添加一个新的 ModernDialog 页面,这应该很容易,因为您使用的是 VS 现代 UI 模板

  • 通过 xaml 自定义 messageDialog 并使其看起来像您想要的样子

    <mui:ModernDialog x:Class="ModernUIApp1.ModernDialogMessage"                  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
              xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
              xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
              xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
              xmlns:mui="http://firstfloorsoftware.com/ModernUI"
              mc:Ignorable="d" 
              d:DesignHeight="300" d:DesignWidth="300"
              Title="DIALOG EXAMPLE" >
      <Grid>
        <Grid.ColumnDefinitions>
          <ColumnDefinition Width="Auto"/>
          <ColumnDefinition Width="*"/>
        </Grid.ColumnDefinitions>
        <Image Source="imageIcon.jpg" Width="40"></Image>
        <TextBlock  Grid.Column="1" Text="Testing a new DialogResult"   VerticalAlignment="Center" HorizontalAlignment="Left"></TextBlock>
      </Grid>
    </mui:ModernDialog>
    
  • 需要的时候显示

     var msg = new ModernDialogMessage();
     msg.ShowDialog();