событие нажатия кнопки, которая содержит больше кнопок, неправильно запускает события - PullRequest
0 голосов
/ 21 декабря 2011

Я сталкиваюсь с этой проблемой: у меня есть кнопка, которая работает как WrapPanel, используя свойство «Шаблон»

Template="{StaticResource WrapLikeTemplate}"

Где «WrapLikeTemplate» выглядит следующим образом:

<ControlTemplate x:Key="WrapLikeTemplate">            
            <WrapPanel Name="wpBody" Orientation="Horizontal" Margin="0,5,0,0">                   
                <Button Content="{Binding XPath=./BUTTONS/Button[1]/Text}" Click="b1_Click" Height="55" Name="b1" Width="157" Margin="65,10" />
                <Button Content="{Binding XPath=./BUTTONS/Button[2]/Text}" Click="b2_Click" Height="55" Name="b2" Width="157" Margin="65,10" />
                <Button Content="{Binding XPath=./BUTTONS/Button[3]/Text}" Click="b3_Click" Height="55" Name="b3" Width="157" Margin="65,10" />
                <Button Content="{Binding XPath=./BUTTONS/Button[4]/Text}" Click="b4_Click" Height="55" Name="b4" Width="157" Margin="65,10" />
                <Button Content="{Binding XPath=./BUTTONS/Button[5]/Text}" Click="b5_Click" Height="55" Name="b5" Width="157" Margin="65,10" />
                <Button Content="{Binding XPath=./BUTTONS/Button[6]/Text}" Click="b6_Click" Height="55" Name="b6" Width="157" Margin="65,10" />
                <Button Content="{Binding XPath=./BUTTONS/Button[7]/Text}" Click="b7_Click" Height="55" Name="b7" Width="157" Margin="65,10" />
                <Button Content="{Binding XPath=./BUTTONS/Button[8]/Text}" Click="b8_Click" Height="55" Name="b8" Width="157" Margin="65,10" />
                <Button Content="{Binding XPath=./BUTTONS/Button[9]/Text}" Click="b9_Click" Height="55" Name="b9" Width="157" Margin="65,10" />
                <Button Content="{Binding XPath=./BUTTONS/Button[10]/Text}" Click="b10_Click" Height="55" Name="b10" Width="157" Margin="65,10" />                    
            </WrapPanel>            
    </ControlTemplate>

Итак, если я нажимаю кнопку, она сначала запускает событие click, а затем событие click его родителя, я имею в виду кнопку, которая содержит ее (ту, что с шаблоном WrapPanel).

Что мне нужнозаключается в том, что при нажатии кнопки выполняется событие нажатия на нее, и только это, а НЕ событие нажатия ее родителя.

Заранее спасибо !!

1 Ответ

0 голосов
/ 21 декабря 2011

в обработчике событий:

private void b1_Click(object sender, RoutedEventArgs e)
{
    e.Handled = true;
}

должно работать.

РЕДАКТИРОВАТЬ: Я попробовал это. Это работает.

...