2013-08-06 19 views
0

У меня есть форма PowerShell, которая содержит объект 'System.Windows.Forms.CheckedListBox'. В настоящее время я в состоянии выбрать более одного варианта CheckBox в то время:PowerShell CheckedListBox выбирает только один вариант за один раз

CheckedListBox with 2 selected

Есть ли простой способ сделать CheckedListBox можно добавить только один выбор?

CheckedListBox with 1 selected

или мне придется использовать некоторую логику 'onClick' событий в моем сценарии?

CheckListBox Proteries:

$checkedlistbox2.BackColor = 'Control' 
$checkedlistbox2.BorderStyle = 'None' 
$checkedlistbox2.CheckOnClick = $True 
$checkedlistbox2.ColumnWidth = 56 
$checkedlistbox2.FormattingEnabled = $True 
[void]$checkedlistbox2.Items.Add("W2K") 
[void]$checkedlistbox2.Items.Add("WXP") 
[void]$checkedlistbox2.Items.Add("WS7") 
$checkedlistbox2.Location = '107, 284' 
$checkedlistbox2.MultiColumn = $True 
$checkedlistbox2.Name = "checkedlistbox2" 
$checkedlistbox2.SelectionMode = 'None' 
$checkedlistbox2.Size = '192, 15' 
$checkedlistbox2.TabIndex = 66 

ответ

0

Вы пробовали изменения атрибута SelectionMode в "One"?

$checkedlistbox2.SelectionMode = "One" 

В качестве альтернативы вы можете использовать переключатель с переключателем, который позволяет одновременно выбирать только один выбор? Что-то вроде этого:

$radioButton1 = New-Object System.Windows.Forms.RadioButton 
$radioButton2 = New-Object System.Windows.Forms.RadioButton 
$radioButton1.Checked = $True 
$radioButton1.Name = "W2K" 
$radioButton1.Text = "W2K" 
$radioButton1.Location = New-Object System.Drawing.Point(10,10) 
$radioButton2.Name = "WXP" 
$radioButton2.Text = "WXP" 
$radioButton2.Location = New-Object System.Drawing.Point(10,30) 
$form.Panel1.Controls.Add($radioButton1) 
$form.Panel1.Controls.Add($radioButton2) 
+0

Я попробовал 'SelectionMode =" Один ", но это не сработает. Радиокнопки - хорошая идея. Вы знаете, как настроить два набора групп переключателей в одной и той же форме (и только для одного выбора)? – Richard

+0

RadioButtons в одном и том же родителе автоматически группируются. Поэтому, если вы разместите две группы в двух разных контейнерах Panel, это сработает. Также есть элемент управления GroupBox, но это создает границу вокруг групп. '$ groupBox = New-Object System.Windows.Forms.GroupBox' – Antony

+0

Создание различных панельных контейнеров отлично работает, спасибо. – Richard

Смежные вопросы