以下の内容はhttps://tech.guitarrapc.com/entry/2013/01/24/220123より取得しました。


WPF4.5入門 その3 「Hello world」をやってみた

PowerShellはシェル環境、バッチ処理、CUIで一撃。みたいな感じで楽しんでます。ではC#は?と言われると、ものすごい興味あるけどなかなか学習が進まない感じでした。 ここでかずき先生が俺得な記事を年始からされてて、もうやるしかないですね! せっかくすばらしい記事なので、順を追ってWPFデビューしてみます。 今後、このタイトルは記事を追いかけつつの奮闘記になるかも…。

環境

以下の環境です。 Visual Studio 2010ならProが有るのですが……2012はちょっと…ぐぬぬ。

OS : Windows 8 Pro x64 JPN
IDE : Visual Studio 2012 Express

Visual Studio 2012でWPFアプリケーションを新規作成

基本ですが一応。

  • VS2012を起動
  • ツールバーからファイルを選択
  • 新しいプロジェクトを選択
  • テンプレートからC#を選択
  • WPFアプリケーションを選択
  • 名前と場所を選択してOK

Hello World

ファイル構成

かずき先生の示されたとおりです。 これは楽しいですねー。WindowsFormよりわくわくですー。

Appクラス

なるほど…。アプリケーション全体なのか…ふむ。

App.xamlは、以下のような内容のXAMLで書かれたファイルになります。XAMLは、WPFでは主にGUIを記述するための言語として使われますがApp.xamlでは、GUIではなくアプリケーション全体を制御するクラスを定義しています。

x:Class="HelloWorld.App"だから、App.XamlのペアのApp.xaml.csにあるnamespace HelloWorldのApplicationを継承したAppを示すということかなー。 x:Classは、このXAMLと対になるコードビハインドのクラスを表しています。HelloWorld.Appクラスは、App.xaml.csの中に以下のように定義されています。

初期起動時のxaml指定方法ですね…。

App.xamlで重要な点は、StartupUri属性でMainWindow.xamlを指定している点です。StartupUriで指定したウィンドウを起動時に表示するため、このアプリケーションを実行するとMainWindow.xamlが表示されます。

MainWindow.xaml

GUIデザインってことかー。 MainWindow.xamlは、Windowを定義したXAMLになります。 同じ要領ですね。namespace HelloWorldのWindowを継承したMainWindowがペアだよと。 App.xamlと同様にx:Classという属性でコードビハインドのクラスが指定されています。HelloWorld.MainWindowクラスのコードを以下に示します。 ここはWindowsFormと一緒かー。 コンストラクタで呼び出されているInitializeComponentメソッドは、XAMLで定義された情報を使用するために必須のメソッドです。このメソッドの呼び出しを忘れると、XAMLで定義した情報が使用できなくなるので気を付けてください。

デザイナによる画面の設計

まんまですねー、分かりやすいwww x:Namejは、プロパティの名前が入力するところですね。 Contentは、プロパティのContentが入力するところですね。

イベントハンドラの追加とコードの記述

はい。 作成したボタンをダブルクリックすると、ボタンのクリックイベントが作成されます。プロパティのイベントからもWindows Formアプリと同じ要領でイベントを作成できます。helloWorldButton_Clickというメソッドが作成されるので以下のようにメッセージボックスを表示するコードを追加してください。

コンパイルして実行

デバッグ無しで実行(Ctrl+F5)して…!!! いよいよ世界よこんにわです かずき先生ありがとうございます。 明日?今晩?もよろしくお願いします。




以上の内容はhttps://tech.guitarrapc.com/entry/2013/01/24/220123より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14