Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 禁用通过其他控件单击-WPF_C#_.net_Wpf_Events_Button - Fatal编程技术网

C# 禁用通过其他控件单击-WPF

C# 禁用通过其他控件单击-WPF,c#,.net,wpf,events,button,C#,.net,Wpf,Events,Button,我有一个简单的应用程序 当我点击按钮时,应用程序关闭。这就是我想要的。 但当我点击其中一个扩展器时,应用程序也会关闭。如何避免这种情况?我不希望当用户单击三个箭头中的一个时应用程序关闭。尝试检查单击的来源(因为单击事件会冒泡,直到有人明确处理它们)。由于按钮是扩展器的父级,它也将接收其单击事件(您的意思是将扩展器置于按钮之外吗?): 尝试检查点击源(因为点击事件会冒泡,直到有人明确处理它们)。由于按钮是扩展器的父级,它也将接收其单击事件(您的意思是将扩展器置于按钮之外吗?): 我想让扩展器

我有一个简单的应用程序



当我点击按钮时,应用程序关闭。这就是我想要的。
但当我点击其中一个扩展器时,应用程序也会关闭。如何避免这种情况?我不希望当用户单击三个箭头中的一个时应用程序关闭。

尝试检查单击的来源(因为单击事件会冒泡,直到有人明确处理它们)。由于按钮是扩展器的父级,它也将接收其单击事件(您的意思是将扩展器置于按钮之外吗?):


尝试检查点击源(因为点击事件会冒泡,直到有人明确处理它们)。由于按钮是扩展器的父级,它也将接收其单击事件(您的意思是将扩展器置于按钮之外吗?):


我想让扩展器在里面。按钮是家长,我希望扩展器在里面。按钮是父按钮
<Window x:Class="WpfControlReview.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="MainWindow" mc:Ignorable="d" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" Height="120" Width="277" ResizeMode="NoResize">
    <Grid>
        <Button HorizontalAlignment="Stretch" Name="button1" VerticalAlignment="Stretch" HorizontalContentAlignment="Center" Click="button1_Click">
        <StackPanel HorizontalAlignment="Stretch" Name="stackPanel1" VerticalAlignment="Stretch" Orientation="Vertical">
            <Label IsHitTestVisible="False" Content="Select your options and press to commit" Name="label1" HorizontalContentAlignment="Center" FontSize="12" />
            <StackPanel Name="stackPanel2" Orientation="Horizontal">
                <Expander Header="Color" x:Name="expander1"/>
                <Expander Header="Make" x:Name="expander2"/>
                <Expander Header="Payment" x:Name="expander3"/>
            </StackPanel>
        </StackPanel>
        </Button>
    </Grid>
</Window>
private void button1_Click(object sender, System.Windows.RoutedEventArgs e)
{
 Application.Current.Shutdown();
}
private void button1_Click(object sender, System.Windows.RoutedEventArgs e)
{
  if (e.Source == this.button1)
  {
    Application.Current.Shutdown();
  }
}