반응형
# 이벤트 핸들러의 파라미터는 다양하다. 참고
private void InitButtonEvent()
{
btnMemo.Click += ClickEventHandler;
btnDataGrid.Click += ClickEventHandler;
btnFileStream.Click += ClickEventHandler;
btnNetwork.Click += ClickEventHandler;
}
private void ClickEventHandler(object sender, RoutedEventArgs e)
{
try
{
if (sender is Button btn)
{
// 버튼 페이지 분기문
switch (btn.Name)
{
case "btnMemo":
frame.Source = new Uri("/View/MemoPage.xaml", UriKind.Relative);
break;
case "btnDataGrid":
frame.Source = new Uri("/View/DataGridPage.xaml", UriKind.Relative);
break;
case "btnFileStream":
frame.Source = new Uri("/View/FileStreamPage.xaml", UriKind.Relative);
break;
case "btnNetwork":
frame.Source = new Uri("/View/NetworkPage.xaml", UriKind.Relative);
break;
}
}
}
catch (Exception ex)
{
// Debug
}
}
# 여기서
if (sender is Button btn) 이 구문의 'is' 사용:
타입 확인과 동시에, 형변환 변수로 사용하겠다는 의미.
728x90
'Programming > C# - Window' 카테고리의 다른 글
C#/ WPF 3. 관리자 권한 사용 (1) | 2024.09.20 |
---|---|
C#/ WPF 2. 프레임 태그 사용 (1) | 2024.09.20 |
C#/ WPF 1. App.xaml (0) | 2024.09.04 |
C#/ WPF 시작하기(구성) (0) | 2024.09.02 |
C# 코드 리뷰 - 1 (0) | 2024.04.26 |