System.Windows.WindowをObject化し実装すれば、Xamlファイルを用意せず、ゴリゴリとGUIフォームを作成する例
Xamlファイルを用意するよりも、昔ながらのゴリゴリとフォ作成する手法も取り入れて、GUIフォームを作成する方が、Powershell的にはやりやすい場合もありそう。
今の自分のスキルだと、こちらの方が馴染むかも。
サンプルコード
実行結果
PlusやMinusをクリックするとTextBoxの変数が変化する。
1 |
Write-Host "Ret=" $TextBox.Text |
最後に$TextBox.Textの結果をコンソールに表示させる。
オブジェクトはXamlファイルで出力できる
ゴリゴリ作ったWindowオブジェクトをxamlファイルとして出力させることも可能
1 2 3 4 5 6 7 8 9 |
#オブジェクトをxamlファイル化 $xaml = [System.Windows.Markup.XamlWriter]::Save($Window) Write-Host $xaml #出来上がったxamlファイルをテキスト出力 $DeskTop = [System.Environment]::GetFolderPath([System.Environment+SpecialFolder]::Desktop) $xamlFilePath = $DeskTop + "\WPFSample.xaml" [System.IO.File]::WriteAllText($xamlFilePath, $xaml, [System.Text.Encoding]::UTF8) |
参考にさせて頂いたサイト
PowerShellでWPFのダイアログを表示する : morituriのブログ
Windowsフォームと同じような方法で、WPFのダイアログを作ることもできる。 ※Windowsフォームを使う場合:powershellでWindowsフォームのモーダルダイアログを表示する ※書き方をちょっと改善する記事:PowerSh...
PowerShell DeepDive: WPF, Data Binding and INotifyPropertyChanged
PowerShell can be used to create some nice UI front-ends using the Windows Presentation Framework (WPF). You can create ...
コメント