-2

私たちはWPFで作業しています。そして、左側に複数の画面とツリーを持つアプリケーションがあります。そのうちの 1 つで、ユーザーはそのツリーのノードを追加、編集、および削除します。そのため、ユーザーがメッセージの削除を押したときにメッセージを表示する必要があります。ユーザーが本当にメッセージを削除するかどうか (はい/キャンセル)、アプリケーション全体をフリーズする必要があります。次に、ユーザーは決定を迫られます。同時に、ポップアップ メッセージは必要ありません。Adornerのようなものが必要です。灰色の背景 (アプリケーション全体がフリーズしたことを意味します) を示し、その中にメッセージを含む境界線をホストできます。Adorner の代替オプションが必要です。

4

1 に答える 1

0

あなたはこのようなものを使うかもしれません

<Window x:Class="WpfApplication5.Window1"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="Window1" Height="300" Width="300">
    <Grid>
        <Border Name="msg" Background="#20A0A0A0" Visibility="Hidden">
            <StackPanel Orientation="Horizontal" VerticalAlignment="Center" HorizontalAlignment="Center">
                <Button Margin="10" Click="Button_Click_1">Yes</Button>
                <Button Margin="10" Click="Button_Click_1">No</Button>
            </StackPanel>
        </Border>
        <Border Name="main">
            <StackPanel>
                <TextBlock Text="tex"/>
                <Button Click="Button_Click">Delete</Button>
                <Button>Another button</Button>
                </StackPanel>
        </Border>

    </Grid>
</Window>

    private void Button_Click(object sender, RoutedEventArgs e)
    {
        msg.Visibility = System.Windows.Visibility.Visible;
        main.IsEnabled = false;
    }

    private void Button_Click_1(object sender, RoutedEventArgs e)
    {
        msg.Visibility = System.Windows.Visibility.Hidden;
        main.IsEnabled = true;
    }
于 2016-03-14T20:44:01.787 に答える