从两个列表框中左右移动项目
Moving items left and right from two listboxes
我有一个带有 2 个列表框的 Gui,如下所示:
这应该是一个安装程序,用户从左侧选择程序并将它们移动到右侧并 select 安装,然后将安装右侧的所有程序。
我对按钮功能从左到右和从右到左移动有问题。当我这样做时:
Function MoveRight (){
$x = $listbox1.selecteditems
@($x) | ForEach-Object {[void] $Listbox2.Items.Add($_)}}
我把项目放到了右边,但是当用户再次按下那个按钮时,我看到那里有重复项。
我正在努力解决如何让它测试左侧的 selected 项是否已存在于右侧,如果存在则忽略它。
我无法检查 listbox1.selecteditem 是否等于 listbox2.selecteditem,因为用户不应该检查 listbox2 中的项目(除非他想删除它们)。
知道我该怎么做吗?
在右侧列表框中添加元素之前使用 .Items.Clear() 方法:
Function MoveRight (){
$listbox2.Items.Clear()
$x = $listbox1.selecteditems
@($x) | ForEach-Object {[void] $Listbox2.Items.Add($_)}}
我有一个带有 2 个列表框的 Gui,如下所示:
这应该是一个安装程序,用户从左侧选择程序并将它们移动到右侧并 select 安装,然后将安装右侧的所有程序。 我对按钮功能从左到右和从右到左移动有问题。当我这样做时:
Function MoveRight (){
$x = $listbox1.selecteditems
@($x) | ForEach-Object {[void] $Listbox2.Items.Add($_)}}
我把项目放到了右边,但是当用户再次按下那个按钮时,我看到那里有重复项。 我正在努力解决如何让它测试左侧的 selected 项是否已存在于右侧,如果存在则忽略它。
我无法检查 listbox1.selecteditem 是否等于 listbox2.selecteditem,因为用户不应该检查 listbox2 中的项目(除非他想删除它们)。
知道我该怎么做吗?
在右侧列表框中添加元素之前使用 .Items.Clear() 方法:
Function MoveRight (){
$listbox2.Items.Clear()
$x = $listbox1.selecteditems
@($x) | ForEach-Object {[void] $Listbox2.Items.Add($_)}}