Tag: WPF/ダイアログ
<Window x:Class="ControlDemo.DialogDemo.DialogBasic.DemoDialogWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:local="clr-namespace:ControlDemo.DialogDemo.DialogBasic" mc:Ignorable="d" Title="DemoDialogWindow" Height="300" Width="300"> <Grid Margin="10"> <Grid.RowDefinitions> <RowDefinition Height="Auto" /> <RowDefinition Height="*" /> </Grid.RowDefinitions> <Grid.ColumnDefinitions> <ColumnDefinition Width="Auto" /> <ColumnDefinition Width="Auto" /> <ColumnDefinition Width="*" /> </Grid.ColumnDefinitions> <Button Grid.Row="0" Grid.Column="0" Click="OkButton_Click" Margin="10" Width="80">OK</Button> <Button Grid.Row="0" Grid.Column="1" Click="CancelButton_Click" Margin="10" Width="80">Cancel</Button> </Grid> </Window>
namespace ControlDemo.DialogDemo.DialogBasic { /// <summary> /// DemoDialogWindow.xaml の相互作用ロジック /// </summary> public partial class DemoDialogWindow : Window { private DemoDialogWindowVM viewModel = new DemoDialogWindowVM(); public DemoDialogWindow() { InitializeComponent(); this.viewModel = new DemoDialogWindowVM(); DataContext = viewModel; } private void OkButton_Click(object sender, RoutedEventArgs e) { DialogResult = true; } private void CancelButton_Click(object sender, RoutedEventArgs e) { DialogResult = false; } } }
private void Button_Click(object sender, RoutedEventArgs e) { DemoDialogWindow dlg = new DemoDialogWindow(); bool? result = dlg.ShowDialog(); if (result == true) { MessageBox.Show("OK"); } else { MessageBox.Show("NG"); } }