|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.Linq;
|
|
|
|
|
using System.Text;
|
|
|
|
|
using System.Threading;
|
|
|
|
|
using System.Threading.Tasks;
|
|
|
|
|
using System.Windows;
|
|
|
|
|
using System.Windows.Controls;
|
|
|
|
|
using System.Windows.Data;
|
|
|
|
|
using System.Windows.Documents;
|
|
|
|
|
using System.Windows.Input;
|
|
|
|
|
using System.Windows.Media;
|
|
|
|
|
using System.Windows.Media.Imaging;
|
|
|
|
|
using System.Windows.Navigation;
|
|
|
|
|
using System.Windows.Shapes;
|
|
|
|
|
|
|
|
|
|
namespace RoutedEventSample
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// MainWindow.xaml에 대한 상호 작용 논리
|
|
|
|
|
/// </summary>
|
|
|
|
|
public partial class MainWindow : Window
|
|
|
|
|
{
|
|
|
|
|
public MainWindow()
|
|
|
|
|
{
|
|
|
|
|
InitializeComponent();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void Window_Click(object sender, RoutedEventArgs e)
|
|
|
|
|
{
|
|
|
|
|
tb3.Text = $"[{DateTime.Now.ToString("HH:mm:ss")}] Click event is bubbled to window";
|
|
|
|
|
Thread.Sleep(1000);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void spBubbling_Click(object sender, RoutedEventArgs e)
|
|
|
|
|
{
|
|
|
|
|
tb2.Text = $"[{DateTime.Now.ToString("HH:mm:ss")}] Click event is bubbled to stack panel";
|
|
|
|
|
//e.Handled = true; // prevent to bubble the event
|
|
|
|
|
Thread.Sleep(1000);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void btnBubbling_Click(object sender, RoutedEventArgs e)
|
|
|
|
|
{
|
|
|
|
|
tb1.Text = $"[{DateTime.Now.ToString("HH:mm:ss")}] Button is clicked";
|
|
|
|
|
Thread.Sleep(1000);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void Window_PreviewMouseDown(object sender, MouseButtonEventArgs e)
|
|
|
|
|
{
|
|
|
|
|
MessageBox.Show("PreviewMouseDown at window");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void spTunneling_PreviewMouseDown(object sender, MouseButtonEventArgs e)
|
|
|
|
|
{
|
|
|
|
|
MessageBox.Show("PreviewMouseDown at stack pannel");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void btnTunneling_PreviewMouseDown(object sender, MouseButtonEventArgs e)
|
|
|
|
|
{
|
|
|
|
|
MessageBox.Show("PreviewMouseDown at button");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|