プログラムを中心とした個人的なメモ用のブログです。 タイトルは迷走中。
内容の保証はできませんのであしからずご了承ください。

ラベル WPF の投稿を表示しています。 すべての投稿を表示
ラベル WPF の投稿を表示しています。 すべての投稿を表示

2018/03/06

Material Design In XAML Toolkit でカスタムカラーを使用する

2018/02/23

WPF で画面が表示されたタイミングで処理を行いたい場合

2018/02/22

Prism で ViewModel から View への通知を行う

2017/11/25

ファイル選択ダイアログとフォルダ選択ダイアログ

2017/05/09

Mahapps.Metro のメッセージダイアログに Yes/No ボタンを表示する

event_note

2017/02/13

MahApps.Metro のインストールと基本設定

event_note

2016/12/28

Page で MahApps.Metro を使用する

event_note

2016/10/15

WPF + MVVM の勉強4:コマンドの実装をラムダ式で

event_note

2016/09/19

定義済みデリゲート

event_note

私は最初に猫でもわかるC#プログラミングという本でC#の勉強をしましたが、その中で唐突に Func やら Actionやらが登場し、ほとんど説明がなかったのでちんぷんかんぷんでした。
ネットで調べてやっとわかったのですが、ラムダ式を活用するためにも、ここらへんはしっかり説明しておいたほうがいいんじゃないかと思いました。
ラムダ式自体の説明は結構わかりやすかったんですけどね。
というわけで、ここに調べたことを自分なりにわかりやすくまとめておきます。

定義済みデリゲートとは?

デリゲート自体の理解は C における関数ポインタと同じだと考えればすぐに理解できました。
ただ、関数ポインタもそうですが、デリゲートの宣言というのはとても面倒です。
そのため、型パラメーターを使用し、汎用的に使用できるデリゲートが最初からいくつか定義されているようです。
これらのデリゲートのことを、定義済みデリゲートというようです。

どんなのがある?

いろいろあるようですが、よく使用するのは FuncAction だと思います。
簡単に言えば、

  • Func: 戻り値を持つメソッドのデリゲート
  • Action: 戻り値を持たないメソッドのデリゲート

となります。
どちらも引数の数に応じてオーバーロードされているようです。
詳細は参考URLを参照してください。

参考URL

2016/09/18

WPF + MVVM の勉強3:コマンドを実装する

event_note

2016/09/12

WPF + MVVM の勉強2:プロパティの変更通知を実装する

event_note

2016/09/11

WPF + MVVM の勉強1:データバインディング

event_note