如何从左到右或从右到左更改datalist图像的顺序?

时间:2011-10-13 11:08:34

标签: c# asp.net datalist

我有一个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就像这样我想移动图像。 怎么做?请有人帮帮我

1 个答案:

答案 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

您可以将集合存储在视图状态或会话对象中,以便在回发后轻松地重新实例化,而无需重新查找原始源。