删除前的 MessageBox - wpf datagrid

Posted

技术标签:

【中文标题】删除前的 MessageBox - wpf datagrid【英文标题】:MessageBox before delete - wpf datagrid 【发布时间】:2019-06-22 16:53:27 【问题描述】:

我的 WPF 应用程序中有一个 DataGrid,其中每一行都以删除按钮结尾。

 <DataTemplate>
      <Button
       Command="Delete"
       CommandParameter="Binding" FontWeight="Bold" Foreground="x:Null" IsEnabled="True" BorderBrush="x:Null">
      <Button.Background>
      <ImageBrush ImageSource="Ikonok/bin.png"/>
      </Button.Background>
      <Button.Style>
        <Style TargetType="x:Type Button">
           <Setter Property="Template">
              <Setter.Value>
                 <ControlTemplate TargetType="x:Type Button">
                      <Border Background="TemplateBinding Background" BorderBrush="x:Null" BorderThickness="1">
                            <ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center"/>
                      </Border>
                 </ControlTemplate>
              </Setter.Value>
           </Setter>
        </Style>
     </Button.Style>
     </Button> </DataTemplate>

如何在询问用户是否真的要删除该项目的删除操作之前编写一个删除 MessageBox 的代码?

【问题讨论】:

这是来自 SO 的winforms 答案:***.com/questions/3036829/… --您可以将其应用于您目前拥有的东西 ***.com/questions/4199162/…的可能重复 Ok cancel Dialog MVVM Pattern wpf.How can I do it的可能重复 【参考方案1】:

当您为删除按钮触发事件时,将此代码放在事件的开头。

MessageBoxResult messageBoxResult = System.Windows.MessageBox.Show("Are you sure?", "Delete Confirmation", System.Windows.MessageBoxButton.YesNo);

if (messageBoxResult == MessageBoxResult.Yes)

     //...
    
else

    //...

【讨论】:

以上是关于删除前的 MessageBox - wpf datagrid的主要内容,如果未能解决你的问题,请参考以下文章

Winform与WPF对话框(MessageBox, Dialog)之比较

来自非模态 WPF 窗口的应用程序模态 MessageBox

关闭 WPF 应用程序后 System.Windows.MessageBox.Show() 在后台保持打开状态

如何在 WPF 中将 MessageBox 窗口保留在前台

wpf messagebox 的返回值如何获取

在WPF中MessageBox的显示如何定义其参数