틱택토 게임 만들기 WPF .NET 6.0 (Core)

안녕하세요. :smile:

WPF 학습이 필요하신 분을 위한 샘플 프로젝트를 소개합니다.

틱택토 WPF

WPF .NET 6.0

image


WPF를 처음 접하시는 분들도 부담없이 시작할 수 있도록 독립적이고 직관적인 구조를 지향하고 있습니다. 재미있게 시작하세요!

이 소스코드를 통해 기대할 수 있는 학습은 아래와 같습니다.

  • CustomControl
  • Trigger
  • Mvvm 패턴
  • DataContext
  • RelayCommand
  • Binding
  • RelativeSource TemplatedParent
  • ListBox / ListBoxItem
  • ItemsPresenter
  • ContentPresenter
  • GetContainerForItemOverride
  • OnApplyTemplate
  • Geometry
  • Hex Color
  • Transparent
  • Application

읽어주셔서 감사합니다. :smile:

13개의 좋아요

@jamesnet214 님, 좋은 정보 공유해 주셔서 감사드립니다. :clap: :clap: :clap:

소스코드를 분석하다 보니, MainWindow 실행시 Show() 가 아닌 모달방식의 ShowDialog() 를 사용하셨는데요, 혹시 특별한 이유가 있을까요?

protected override void OnStartup(StartupEventArgs e)
{
	base.OnStartup(e);
	Resources.MergedDictionaries.Add(new ResourceDictionary { Source = new Uri("/DevNcore.UI.Design.Geometry;component/Themes/Packages.xaml", UriKind.RelativeOrAbsolute) });
	var win = new MainWindow();

	win.ShowDialog();
}
2개의 좋아요

@heyjude 좋게 봐주셔서 감사합니다.

혹시 아래와 같은 방법이 있는데도 불구하고

  MainWindow main = new();
  MainWindow = main;
  main.Show();

대신 ShowDialog()를 사용한 것에 대해… 사실 이유는 없습니다. :smile:

간단한 샘플 소스코드이기도 하고,
ShowDialog가 끝나면 Application을 종료한다는 의도로 봐주시면 좋을 것 같습니다.

예리한 질문 감사합니다!

3개의 좋아요

@jamesnet214 네. 알겠습니다. 샘플로 작성하셨긴 하나, 원작자의 정성이 듬쁙듬쁙 들어간 코드라는게 너무 명확하게 느껴집니다. 그래서, 한줄 한줄 어떤 의도로 작성하셨는지 놓치기 싫어서 질문 드렸네요. :slight_smile: 답변 감사드립니다!

3개의 좋아요