Episode 60 – Scripting UI with Joel Bennett and James Brundage


A Podcast about Windows PowerShell.

In This Episode

Tonight on the PowerScripting Podcast we talk with Joel Bennett and James Brundage about scriptable user interfaces.




When it comes to scripting, you’re a warrior. But mighty warriors need mighty tools! For awesome PowerShell scripting, nothing matches the might of Quest’s PowerGUI. Versatile and easy to use, PowerGUI helps you build commanding scripts that leverage PowerShell’s strength across the enterprise. Now, ruling your domain is easier than ever.

Is your scripting might equal to the challenge? Put the power in your hands – download PowerGUI today




This segment is brought to you by Idera:

Want to make Windows PowerShell easier than ever to learn and master? Checkout Idera's PowerShellPlus Professional Edition which is now available for download! The new version has vastly improved code completion and a slick interactive Learning Center. Go to www.idera.com/PodcastPeople to get your copy today!


  • dougchase : ## What do we need to do to get started with this stuff?
  • jkavanagh58 : ## Is PrimalForms WPF?
  • dougchase : ## Does it work in V1 and how do I implement it in V1?  Seems like I read it worked in both versions but I couldn't figure out how to start using it in V1.
  • ChadMiller : ##Haven't looked at WPF. Can you write a web page in WPF like powershellasp?
  • rfoust : ## can you recommend a site to understand the basics of WPF?
  • hal: Will these scriptable UI tools be able to replace HTA?
  • jasonmarcher : ## How easy is it to create data templates and add them to existing tools/controls


New-Grid -Rows 5 {    
    New-Label "Please Enter Your Name" 
    New-TextBox -Name YourName -Row 1 
    New-Label "Sex:" -Row 2
    New-StackPanel -Row 3 {
        New-RadioButton -Content "Male" -IsChecked $true 
        New-RadioButton -Content "Female" -Column 1
    New-Button "Done" -Row 4 -On_Click { 
        $yourName = $window | Get-ChildControl YourName 
        $sex = $window | 
            Get-ChildControl | 
            Where-Object {
               $_ -is [Windows.Controls.RadioButton] -and
            } | 
            Foreach-Object {
        if (-not $yourName.Text) {
            [Windows.Messagebox]::show("Who are you?")
        $global:information = New-Object Object |
            Add-Member NoteProperty Name $yourName.Text -PassThru |
            Add-Member NoteProperty Sex $sex -PassThru        
} -show


This segment is brought to you by SAPIEN Technologies.




  • Kirk Munro has an awesome blog post talking about a quite wicked gotcha involving quoting rules and escape characters.


Comments are closed.