如果我有两个列表框,它们之间有一个按钮,如果 ListBox2 的项目是数据绑定的,如何更新 ListBox2 的项目?
<asp:ListBox runat="server" ID="ListBox1" DataSourceID="DataSource1"
DataTextField="Name" DataValueField="ID" SelectionMode="Multiple" />
<asp:Button runat="server" ID="addButton" onClick="addButton_Click" />
<asp:ListBox runat="server" ID="ListBox2" DataSourceID="DataSource2"
DataTextField="Name" DataValueField="ID" SelectionMode="Multiple" />
此外,如果我使用 SelectionMode="Multiple",我能否使用一次获取一项的 UpdateCommand 来更新 DataSource?
编辑:
好的,添加一些说明:
- 两个列表框都是数据绑定到唯一数据 (SqlDataSource)。
- 当用户单击按钮时,我想将 ListBox1 中的项目添加到 ListBox2 中,反之亦然。
- 我希望能够向 ListBox 添加多个项目(假设打开了多选)
- 我希望它触发 DataSource 上的 UpdateCommand。
到目前为止,我能够做到这一点的唯一方法是手动从第一个 listBox 中获取每个项目并将其作为参数添加到 DataSource 的 UpdateCommand 并手动调用 SqlDataSource.Update() 方法。这可行,但这意味着我需要为多个选择传递一个分隔字符串或打开多个连接。我正在寻找的是一种更新 ListBox 上的 DataSource 的方法,一旦它完全更新,然后调用 Bind/Update 并将数据持久化回数据库。