2017-04-10 139 views
1

有什么我需要添加以连接DataTableComboBox或让它列出项目?powershell:combobox只显示System.Data.DataRowView

目前,它会显示项目,但他们都是System.Data.DataRowView,我不知道为什么。

<ComboBox x:Name="WPFDomainUsersBox" HorizontalAlignment="Left" Margin="288,10,0,0" VerticalAlignment="Top" Width="215" Height="23" Text="Domain Users"/> 
... 
... 
... 
#create a datatable to bind to our combobox 
    $datatable = New-Object system.Data.DataTable 
    #Define Columns 
    $ColValue = New-Object system.Data.DataColumn "Value",([string]) 
    $ColText = New-Object system.Data.DataColumn "Text",([string]) 
    #add columns to datatable 
    $datatable.columns.add($ColValue) 
    $datatable.columns.add($ColText) 

    #List option. 
    $DomainUsers = Get-ADUser -Filter * 
    ForEach($DUsers in $DomainUsers) { 
     #$WPFDomainUsersBox.Items.Add($DUsers.SamAccountName) 

     $datarow = $datatable.NewRow() 
     #Enter data in the row 
     $datarow.Value = $DUsers.SamAccountName 
     $datarow.Text = $DUsers.SamAccountName 
     #Add the row to the datatable 
     $datatable.Rows.Add($datarow) 
    } 

    $WPFDomainUsersBox.ItemsSource = $datatable.DefaultView 

回答

3

集的ComboBox的在DataTable列的名称DisplayMemberPath属性要显示:

$WPFDomainUsersBox.DisplayMemberPath = "Text"