SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

.NET Core 3で始めるWPFアプリ開発

.NET Core 3で始めるWPFアプリ開発――Hello, WPF!

.NET Core 3で始めるWPFアプリ開発 第1回

コントロールとC#コードの対話

 ただコントロールを表示しただけでは、あまり意味のあるアプリにはなりませんね。実行中に表示を変えたり、エンドユーザーの操作に応答したりするにはどうするのでしょう?

コードビハインド

 コントロールのプロパティは、「コードビハインド」(または「分離コード」)と呼ばれるC#のコードから変更できます。また、コントロールはエンドユーザーの操作を受けて、コードビハインドのメソッドを呼び出すこともできます(イベントハンドラー)。これらは、コントロールとC#のコードが対話するための「簡易的」な方法です。大規模なアプリを開発するときの「本格的」なバインディングという方法は回を改めて解説します。

 例えばMainWindow.xamlに対しては、MainWindow.xaml.csがコードビハインドになります。Visual Studioのソリューションエクスプローラーで見ると、[MainWindow.xaml]にぶら下がるようにしてコードビハインドの[MainWindow.xaml.cs]があります(次の画像)。

ソリューションエクスプローラーで見るコードビハインド
ソリューションエクスプローラーで見るコードビハインド

 コードビハインドは、実際には独立したC#のソースコードファイルです。Windowsのエクスプローラーで見ると分かります(次の画像)。

Windowsのエクスプローラーで見るコードビハインド
Windowsのエクスプローラーで見るコードビハインド

 コードビハインドは、Visual Studioでプロジェクトにウィンドウを追加すると、自動的に作成されます。

 そして、ビルドするときに、XAMLで定義されたオブジェクトが、コードビハインドで定義されたクラスにマージされます。ですから、XAMLのコントロールとコードビハインドのC#コードは「対話」できるのです。

 コードビハインドからXAMLのコントロールにアクセスするには、コントロールに変数名を付けておきます。XAMLのコントロールからコードビハインドのメソッドを呼び出すには、コントロールのイベント属性にメソッド名を指定します。別の方法もありますが、今回はこのやり方でいきましょう。

次のページ
コントロールに変数名を付ける

関連リンク

この記事は参考になりましたか?

.NET Core 3で始めるWPFアプリ開発連載記事一覧
この記事の著者

biac(ばいあっく)

HONDA R&Dで自動車の設計をやっていた機械屋さんが、技術の進化スピードに魅かれてプログラマーに。以来30年ほど、より良いコードをどうやったら作れるか、模索の人生。わんくま同盟の勉強会(名古屋)で、よく喋ってたりする。2014/10~2019/6 Microsoft MVP (Windows Devel...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/11809 2019/12/23 11:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー