功能描述:

a,主界面中创建一个“animal”按钮

b,子界面“Animals”中创建cat和dog两个按钮

c,创建一个类“Parmeter”存放变量Flag

d,当点击子界面中的按钮时,将点击状态存放变量Flag中,并传递到主界面的后台代码中,在主程序中触发相应的事件。

1,主界面Xaml代码

    <Grid>
        <StackPanel>
            <Button Name="ani" Height="50" Width="200" Margin="30" FontSize="18" Click="ani_Click">animal</Button>
        </StackPanel>
    </Grid>

主界面后台程序:

        Parmeter par = new Parmeter();
        private void ani_Click(object sender, RoutedEventArgs e)
        {
            Animals animals = new Animals();

            animals.ShowDialog();

            if(animals.DialogResult==true)
            {
                par.Flag = animals.par.Flag;

                if (par.Flag == 1) { MessageBox.Show("喵喵喵"); }
                
                if(par.Flag==2) { MessageBox.Show("汪汪汪"); }
            }

            
        }


2,子界面Xaml代码:

    <Grid>
        <StackPanel>
            <Button Name="mao" FontSize="18" Width="100" Height="50" Margin="20" VerticalAlignment="Top" Click="mao_Click">cat</Button>
            <Button Name="gou" FontSize="18" Width="100" Height="50" Margin="20" VerticalAlignment="Top" Click="gou_Click">dog</Button>
        </StackPanel>
    </Grid>

子界面后台程序:

        public Parmeter par = new Parmeter();
        private void mao_Click(object sender, RoutedEventArgs e)
        {
            //Flag=1标记为cat按钮被点击了
            par.Flag = 1;

            DialogResult = true;

            this.Close();
        }

        private void gou_Click(object sender, RoutedEventArgs e)
        {
            //Flag=1标记为dog按钮被点击了
            par.Flag = 2;

            DialogResult = true;

            this.Close();

        }


3,创建类Parmeter存放变量Flag

    public class Parmeter
    {
      public  int Flag { get; set; }
    }