そこで、VisualStudioで作ったフォームをPowershellから使ってみる。
$path = "D:\Documents\Visual Studio 2010\Projects\WindowsFormsApplication2\WindowsFormsApplication2" $source1 = "Form1.cs" $source2 = "Form1.Designer.cs" $source = gc (Join-Path $path $source1) $source += gc (Join-Path $path $source2) Add-Type -TypeDefinition ($source | out-string) -ReferencedAssemblies System.Windows.Forms, System.Drawing, System.Data, System.Core $form = New-Object WindowsFormsApplication1.Form1 $form.button1.text = "test" $form.button1.Add_Click({$form.textBox1.text = "Hello World"}) [Windows.Forms.Application]::Run($form) |
VisualStudioのフォームはパーシャルクラスになっているので2つのソースを連結して読み込んでいる。
それ以外は、これまでと違うところは特に無い。
Powershell側で参照するコントロールについては、予めVisualStudioにてPublicスコープに変更しておく必要がある。(上記の場合はbutton1とtextbox1)
0 件のコメント:
コメントを投稿