ごらくらいふ

プログラミングしたりゲームしたり

WPFをかじりだした。Hello world.

直近、Web systemとしてC#に触れる機会が発生して、ついでにGUIアプリケーションの作り方にも触れたいと思ったのでかじった。

とりあえず@ITの連載をざっと流し読みして雰囲気を掴む。

public partial class MainWindow :Window
{
    public MainWindow()
    {
        InitializeComponent();
        DataContext = new MainWindowViewModel {
            text = "Hello World",
        };
    }
    public class MainWindowViewModel
    {
        public string text { get; set; }
    }
}
<Grid>
    <Label Content="{Binding text}" />
</Grid>

所感

  • MVVM
    • DataContextに突っ込んだオブジェクトのpublic propertyにBindできる
      • クラス生成しなくても即時生成objectでもbind出来なくはないらしい
  • エントリーポイントはApp.xaml
    • Buildすると中にMain()が生成されるらしい
    • Application.StartupUriにMainViewのPathが突っ込んである
      • Uriってことは、Routingあたりが居てView遷移の交通整理でもしてくれんのかな
  • View(Window?)のライフサイクルが知りたい
    • 泥のOnCreateとか、OnDestroy相当のやつ
    • View, ViewModelはいつ生まれても死んでもいいようにModelやら切り離す設計を強要してる?
      • Apprlcationのライフサイクルがあればそっち管理で十分か。あるか知らんけど。

ちょろい。いや、ちょろいと思わせてくれないと辛いんだけども。

参考URL

Insider.NET > 業務アプリInsider > 連載:WPF入門 - @IT