obsługiwać zdarzenie kliknięcia poza przyciskiem

Próbuję ćwiczyć c # przez odtworzenie aplikacji w Apple AppStore.

W aplikacji znajduje się prostokąt z tekstem:"Touch me". Kiedy go dotkniesz, prostokąt się zmieni.

Po kilkukrotnym wykonaniu tekst zmieni się na „Nie dotykaj mnie”. W takim przypadku musisz dotknąć poza prostokątem.

Wszystko poszło dobrze, aż do momentu, w którym musisz dotknąć poza prostokątem.

Oto moja obsługa zdarzeń:

    private void Canvas_MouseLeftButtonDown_1(object sender, MouseButtonEventArgs e)
    {
        if (click == 0)
        {
            if (rectangle1.IsMouseOver || textBlock1.IsMouseOver)
            {
               // reposition and stuff
                if (clicks == 10)
                {
                    // Change the value of the variable click to 1 
                    click = 1;
                    textBlock1.Text = "Do Not Click me";
                    Canvas.SetLeft(textBlock1, 200);
                }
            }
        }
        else
        {
            if (rectangle1.IsMouseOver || textBlock1.IsMouseOver)
            {
                // Game Over
                this.Close();
            } else
            {
                // reposition and stuff

                click = 0;
                textBlock1.Text = "Click me";
                Canvas.SetLeft(textBlock1, 225);
            }
        }
    }

Program działa idealnie do punktu, w którym musisz kliknąć poza prostokątem.

Program zamyka się po kliknięciu prostokąta, ale po kliknięciu poza nim nic się nie dzieje. Czy jest jakiś program obsługi zdarzeń, który może wykonać zadanie, którego chcę?

Oto mój xaml

<Window x:Class="ClickMe.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="MainWindow" Height="510" Width="525" ResizeMode="NoResize">
<Canvas Name="canvas" MouseLeftButtonDown="Canvas_MouseLeftButtonDown_1">
    <Rectangle Fill="#FFF4F4F5" Name="rectangle1" HorizontalAlignment="Left" Height="38" Stroke="Black" VerticalAlignment="Top" Width="509" Canvas.Left="0" Canvas.Top="63"/>
    <Label Name="label1" Content="0" Canvas.Left="57" Canvas.Top="446"/>
    <Label Content="Klicks:" Canvas.Left="10" Canvas.Top="446"/>
    <TextBlock Name="textBlock1" Canvas.Left="225" TextWrapping="Wrap" Text="Click Me" Canvas.Top="74" Margin="10,0,0,0"/>

</Canvas>

questionAnswers(3)

yourAnswerToTheQuestion