【问题标题】:Powershell statement issue - checkbox not working [closed]Powershell语句问题-复选框不起作用[关闭]
【发布时间】:2022-06-15 03:51:41
【问题描述】:

我正在为我们的 HR 环境创建一个用于 AD 目的的小型用户表单,但我希望能够单击复选框以将用户添加到所需的组。

他们要求表格也应包括所需的组。

整个脚本脚本工作正常,除了我使用复选框和 if 语句的部分。

编辑 --- 添加了 $grpbx.isChecked 但仍然无法正常工作

[void][System.Reflection.Assembly]::LoadWithPartialName('presentationframework')
[xml]$XAML = @"

<Window 
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"

        Title="New User Creation" Height="450" Width="637" ResizeMode="NoResize">
    <Grid>
        <Label Name="fnlabel" Content="First Name" HorizontalAlignment="Left" Margin="23,24,0,0" VerticalAlignment="Top"/>
        <Label Name="lnlabel" Content="Last Name" HorizontalAlignment="Left" Margin="179,24,0,0" VerticalAlignment="Top"/>
        <TextBox Name="fntxt" HorizontalAlignment="Left" Margin="27,50,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="120"/>
        <TextBox Name="lntxt" HorizontalAlignment="Left" Margin="183,50,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="120"/>
        <Label Name="samlabel" Content="Logon Name" HorizontalAlignment="Left" Margin="23,70,0,0" VerticalAlignment="Top"/>
        <TextBox Name="samtxt" HorizontalAlignment="Left" Margin="27,96,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="120"/>
        <Label Name="tllabel" Content="Title" HorizontalAlignment="Left" Margin="23,114,0,0" VerticalAlignment="Top"/>
        <TextBox Name="tltxt" HorizontalAlignment="Left" Margin="27,140,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="120"/>
        <Label Name="mblabel" Content="Mobile" HorizontalAlignment="Left" Margin="23,160,0,0" VerticalAlignment="Top"/>
        <TextBox Name="mbtxt" HorizontalAlignment="Left" Margin="27,187,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="120"/>
        <Button Name="Submit" Content="Submit" HorizontalAlignment="Left" Margin="318,393,0,0" VerticalAlignment="Top"/>
        <Button Name="Close" Content="Close" HorizontalAlignment="Left" Margin="270,393,0,0" VerticalAlignment="Top"/>
        <TextBox Name="pwtxt" HorizontalAlignment="Left" Margin="183,96,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="120"/>
        <Label Name="pwlabel" Content="Password" HorizontalAlignment="Left" Margin="179,70,0,0" VerticalAlignment="Top"/>
        <Label Name="dplabel" Content="Display Name" HorizontalAlignment="Left" Margin="179,114,0,0" VerticalAlignment="Top"/>
        <TextBox Name="dptxt" HorizontalAlignment="Left" Margin="183,140,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="120"/>
        <Label Name="emlabel" Content="Email Address" HorizontalAlignment="Left" Margin="23,207,0,0" VerticalAlignment="Top"/>
        <TextBox Name="emtxt" HorizontalAlignment="Left" Margin="27,233,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="200"/>
        <CheckBox Name="grpbx" Content="GroupA" HorizontalAlignment="Left" Margin="27,267,0,0" VerticalAlignment="Top"/>
    </Grid>
</Window>

"@
#Read XAML
$reader=(New-Object System.Xml.XmlNodeReader $xaml) 
try{$Form=[Windows.Markup.XamlReader]::Load( $reader )}
catch{Write-Host "Unable to load Windows.Markup.XamlReader"; exit}

# Store Form Objects In PowerShell
$xaml.SelectNodes("//*[@Name]") | ForEach-Object {Set-Variable -Name ($_.Name) -Value $Form.FindName($_.Name)}
Import-Module ActiveDirectory

$Close.Add_Click({$Form.Close()})

$Submit.Add_Click({
 New-ADUser `
-Name $dptxt.Text`
-EmailAddress $emtxt.text `
-DisplayName $dptxt.Text`
-SamAccountName $samtxt.text `
-UserPrincipalName $emtxt.text `
-GivenName $fntxt.text `
-Surname $lntxt.Text `
-Description $tltxt.text `
-MobilePhone $mbtxt.text `

if ($grpbx.Checked){
Add-ADGroupMember -Identity ADGroupA -Members $samtxt.text
}

})

#Show Form
$Form.ShowDialog() | out-null

【问题讨论】:

  • 应该是$grpbx.isChecked

标签: powershell powershell-3.0


猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-07-03
  • 2014-04-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多