C# Prism Template Pack コードスニペット(Visual Studio Code)
C# Prism Template Pack向けのVisual Studio Codeスニペットです。
Visual Studio Codeでカスタムコードスニペットを登録する
以下の手順で、コードスニペットファイルを作成できます。
-
コードエディタの上部メニューからファイル > ユーザー設定 > ユーザースニペットを選択します。
-
スニペットはJSON形式で記述します。
コードスニペット
propp
更新通知が必要なプロパティを定義します。
"Create Bindable Property": {
"scope": "csharp",
"prefix": "propp",
"body": [
"private ${1:Type} _${3:${2/(.*)/${1:/camelcase}/}};",
"public ${1:Type} ${2:Name}",
"{",
" get { return _$3; }",
" set { SetProperty(ref _$3, value); }",
,
"}"
],
"description": "Create a property, with a backing field, that depends on BindableBase."
}
${3:...}について
${2/(.*)/${1:/camelcase}/}:正規表現と置換パターンを組み合わせた部分です。${2:Name}の値をもとにバッキングフィールドの名前を生成します。(.*):正規表現のキャプチャグループです。ユーザーが入力したプロパティ名(Name)をキャプチャします。${1:/camelcase}:キャプチャした文字列をキャメルケースに変換するための置換パターンです。${1:...}はキャプチャした値を参照し、:camelcaseでキャメルケース変換を指示します。
cmd
デリゲートコマンドです。
"Create DelegateCommand Property": {
"scope": "csharp",
"prefix": "cmd",
"body": [
"public DelegateCommand ${1:Command} => new DelegateCommand(() =>",
"{",
"",
"});"
],
"description": "Create a DelegateCommand property with a private setter."
}
cmdg
パラメータ付きのデリゲートコマンドです。
"Create Generic DelegateCommand Property": {
"scope": "csharp",
"prefix": "cmdg",
"body": [
"public DelegateCommand<${2:Param}> ${1:Command} => new DelegateCommand<${2:Param}>((p) =>",
"{",
"",
"});"
],
"description": "Create a generic DelegateCommand property."
}
関連コンテンツ
技術の記事をもっと見る →C# | WPF Prism 部分ViewからMainWindowのメソッドを呼び出す方法
WPF Prismでは、部分ViewからMain Windowのメソッドを呼び出すことができます。PrismのイベントAggregatorを使用することで、ViewModel間の直接的な参照を回避し、アプリケーション内で発生するイベントを簡単に処理することができます。
#csharp#wpf#prismC# | WPF Prism MainWindow から ContentRegion の View メソッドを呼び出す方法
WPF Prismでは、主要なウィンドウ(Main Window)とその中に含まれる一連のリージョン(Region)で構成される場合があります。これらのリージョンには、ビュー(View)やビューモデル(ViewModel)が配置され、相互に通信することができます。Main WindowからContent Regionにあるビューやビューモデルのメソッドを呼び出す方法を説明します。
#csharp#wpf#prismC# | WPF Prism 動画(MediaElement)をMVVMパターンで実装する方法
WPF Prism の動画再生(MediaElement.Play())を、MVVM パターンで実装する方法
#csharp#wpf#prism