我有一个datalist和2个按钮生命权,它位于datalist之外
数据列表:
<asp:DataList ID="dlst" runat="server" RepeatDirection="Horizontal"
RepeatColumns="5" CellSpacing="8">
<ItemTemplate>
<asp:ImageButton ID="Image" runat="server" ImageUrl='<%#"~/Controls/Showimg.ashx?FileName=" +DataBinder.Eval(Container.DataItem, "FilePath") %>' OnCommand="ImageSelect_Command" CommandArgument='<%# Eval("Id").ToString() +";"+Eval("FilePath")+";"+Eval("Index")+";"+Eval("FileName") %>' /><br />
<asp:Label ID="nlbl" runat="server" Text="Figure"></asp:Label><%# dlst.Items.Count + 1%>
</ItemTemplate>
</asp:DataList>
按钮:
<asp:ImageButton ID="btnleft" runat="server" ImageUrl="~/images/arrowLBlue.png"
ToolTip="Move Item Left" OnClick="btnleft_Click" />
<asp:ImageButton ID="btnright" runat="server" ImageUrl="~/images/arrowRBlue.png"
ToolTip="Move Item Right" />
我上传并绑定图像工作正常,现在我想在我的按钮点击上从左到右或从右到左移动选定的图像,假设我有图像a1,a2,a3,a4,a5和i选择图像a2后单击btnmoveright然后图像顺序应该是a1,a3,a2,a4,a5现在如果再次选择图像a2后再点击btnmoveright那么顺序应该是a1,a3,a4,a2,a5就像这样我想移动图像。 怎么做?请有人帮帮我
答案 0 :(得分:1)
看起来您的datalist的数据源是表示文件路径的字符串集合。如果是这样,只需将所选项目与左侧或右侧的项目交换并重新绑定。
Public Sub Swap(ByVal obj1 As Object, ByVal obj2 As Object)
Dim temp As Object = obj1
obj1 = obj2
obj2 = temp
End Sub
您可以将集合存储在视图状态或会话对象中,以便在回发后轻松地重新实例化,而无需重新查找原始源。