0

MainWindow.xaml に、クリック時に共通のダイアログ ボックスを呼び出す 2 つのボタンがある WPF アプリケーションがあります。コード スニペットは次のとおりです。

<Button Name="Button1" Content="Save 1" Click="Button1_Click"/>
<Button Name="Button2" Content="Save 2" Click="Button2_Click"/>

Button1_Click と Button2_Click は、クリック時に SaveDialog.xaml を呼び出します。このダイアログには、OK というボタンがあります。

<Button Name="OKBtn" Content="OK" Click="OKBtn_Click"/>

SaveDialog.xaml.cs のスニペットは次のとおりです。

private void OKBtn_Click(object sender, RoutedEventArgs e)
    {
        //Access Button Name from Main Window that called this dialog and store it in a string

    }

SaveDialog.xaml.csのOKボタンクリックイベント内でこのSaveDialogを呼び出したMainWindowからボタンの名前にアクセスするのを手伝ってくれませんか。私は試してみましたが、解決策はありませんでした。ボタンの名前を取得することは私にとって不可欠です。保存ボタンを組み合わせることは問題外です。機能は異なりますが、同じダイアログ ボックスを呼び出すためです。

4

1 に答える 1

0

これを行う簡単な方法は、ボタンに Uid を設定することです。例:

<Button Name="Button1" Uid="000" Content="Save 1" Click="Button1_Click"/>
<Button Name="Button2" Uid="111" Content="Save 2" Click="Button2_Click"/>

次に、OKBtn_Click イベントでこれを行うことができます。

private void OKBtn_Click(object sender, RoutedEventArgs e)
    {
        Button b = Ctype(sender, Button)
        If(b.Uid = "000") {
           SaveFile;
        }
        Else{
           SaveOtherFile;
         }
    }
于 2013-10-11T12:57:36.010 に答える