asp.net VB 如何 select 将一个列表框上的所有匹配值转换为另一个列表框?
asp.net VB How to select all matching values on one listbox to another?
我有两个列表框,一个 DivisionListBox 和一个 SitesListbox。在部门列表框中,我有商店组 ID 值,在站点列表框中,我有多个值与部门列表框共享商店组 ID。
我想做的是,当我 select DivisionListbox 中的 Store Group ID 值时,它 selectSitesListbox 中与 selected 匹配的所有项目存储组 ID 值。
实现这个的正确方法是什么?
我如何填充列表框
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
FillDivisionListbox()
FillSitesListbox()
End Sub
Private Sub FillDivisionListbox()
Try
divList = SQL.ExecQuery("SELECT STR_GRP_ID, CAST(STR_GRP_ID AS varchar) + ' - ' + GROUP_DESC AS IDDesc
FROM Store_Group_Desc")
Catch ex As Exception
MsgBox(ex.Message)
End Try
DivisionListBox.DataSource = divList
DivisionListBox.DataTextField = "IDDesc"
DivisionListBox.DataValueField = "str_grp_id"
DivisionListBox.DataBind()
End Sub
Private Sub FillSitesListbox()
Try
siteList = SQL.ExecQuery("SELECT d.str_grp_id, (Cast(s.Str_ID As varchar) + ' - ' + s.Nm + ' [ ' + Cast(d.str_grp_id As varchar) + ' ]' ) as IDDesc
FROM Retail_Stores left outer join store_group d on ( s.str_id = d.str_id )
ORDER BY s.Str_ID")
Catch ex As Exception
MsgBox(ex.Message)
Exit Sub
End Try
SitesListBox.DataSource = siteList
SitesListBox.DataTextField = "IDDesc"
SitesListBox.DataValueField = "str_grp_id"
SitesListBox.DataBind()
End Sub
在 DivisionListBox 上,onselected 方法循环遍历站点列表框中的项目,如果 GroupID 与 DivisionListBox 中项目的 GroupID 匹配,则标记为选中。
例如
foreach(ListItem item in SiteListBox.Items)
{
if(item.Value == DivisionListBox.SelectedValue)
{
item.selected = true;
}
}
我有两个列表框,一个 DivisionListBox 和一个 SitesListbox。在部门列表框中,我有商店组 ID 值,在站点列表框中,我有多个值与部门列表框共享商店组 ID。
我想做的是,当我 select DivisionListbox 中的 Store Group ID 值时,它 selectSitesListbox 中与 selected 匹配的所有项目存储组 ID 值。
实现这个的正确方法是什么?
我如何填充列表框
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
FillDivisionListbox()
FillSitesListbox()
End Sub
Private Sub FillDivisionListbox()
Try
divList = SQL.ExecQuery("SELECT STR_GRP_ID, CAST(STR_GRP_ID AS varchar) + ' - ' + GROUP_DESC AS IDDesc
FROM Store_Group_Desc")
Catch ex As Exception
MsgBox(ex.Message)
End Try
DivisionListBox.DataSource = divList
DivisionListBox.DataTextField = "IDDesc"
DivisionListBox.DataValueField = "str_grp_id"
DivisionListBox.DataBind()
End Sub
Private Sub FillSitesListbox()
Try
siteList = SQL.ExecQuery("SELECT d.str_grp_id, (Cast(s.Str_ID As varchar) + ' - ' + s.Nm + ' [ ' + Cast(d.str_grp_id As varchar) + ' ]' ) as IDDesc
FROM Retail_Stores left outer join store_group d on ( s.str_id = d.str_id )
ORDER BY s.Str_ID")
Catch ex As Exception
MsgBox(ex.Message)
Exit Sub
End Try
SitesListBox.DataSource = siteList
SitesListBox.DataTextField = "IDDesc"
SitesListBox.DataValueField = "str_grp_id"
SitesListBox.DataBind()
End Sub
在 DivisionListBox 上,onselected 方法循环遍历站点列表框中的项目,如果 GroupID 与 DivisionListBox 中项目的 GroupID 匹配,则标记为选中。 例如
foreach(ListItem item in SiteListBox.Items)
{
if(item.Value == DivisionListBox.SelectedValue)
{
item.selected = true;
}
}