listview可以直接排序吗?如何设置?

yangquanlaohou 2008-07-23 12:46:49
listview可以直接排序吗?如何设置?
...全文
285 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
o_____Smile_____o 2009-09-01
  • 打赏
  • 举报
回复
学习了
marvelstack 2008-07-24
  • 打赏
  • 举报
回复
建议看这里完全掌握该知识。
使用 Windows Form 按列排序 ListView 项目
http://www.microsoft.com/china/MSDN/library/netFramework/netframework/NFdnwinformslistviewsort.mspx
http://www.microsoft.com/china/MSDN/library/enterprisedevelopment/softwaredev/dnwinforms.mspx
ericzhangbo1982111 2008-07-23
  • 打赏
  • 举报
回复
listView1.Sorting = SortOrder.Ascending;

也可以用
listView1.ListViewItemSorter
自己排序
初吻给了烟 2008-07-23
  • 打赏
  • 举报
回复
不可以的,只能用第三方的分页控件或都自已写分页方法(可以用存储过程分页方法)!!!
sunrobust 2008-07-23
  • 打赏
  • 举报
回复
listView.Sort()方法
dstmt 2008-07-23
  • 打赏
  • 举报
回复
摘自MSDN帮助

通过在 LayoutTemplate 模板中添加一个按钮,并将该按钮的 CommandName 属性设置为“Sort”,可以对 ListView 控件中显示的数据进行排序。该按钮的 CommandArgument 属性应设置为要用作排序依据的列名。重复单击“Sort”(排序)按钮可在排序方向 Ascending 和 Descending 之间切换。

在“Sort”(排序)按钮的 CommandArgument 属性中,可以指定多个列名。但是,ListView 控件会向整个列表的列应用该排序方向。因此,只有列表的最后一列会应用该排序方向。例如,如果 CommandArgument 包含“LastName, FirstName”,则重复单击“Sort”(排序)按钮会产生某种类似于“LastName, FirstName ASC”或“LastName, FirstName DESC”的表达式。

下面的示例演示了一个 ListView 控件,它包含的“Sort”(排序)按钮将按姓氏对数据排序。
<asp:ListView runat="server" ID="ListView1" DataSourceID="SqlDataSource1">
<LayoutTemplate>
<asp:LinkButton runat="server" ID="SortButton"
Text="Sort" CommandName="Sort" CommandArgument="LastName" />
<table runat="server" id="table1">
<tr runat="server" id="itemPlaceholder">
</tr>
</table>
<asp:DataPager runat="server" ID="DataPager" PageSize="20">
<Fields>
<asp:NumericPagerField ButtonCount="10"
PreviousPageText="<--"
NextPageText="-->" />
</Fields>
</asp:DataPager>
</LayoutTemplate>
<ItemTemplate>
<tr runat="server">
<td><asp:Label runat="server" ID="FirstNameLabel"
Text='<%# Eval("FirstName")' /></td>
<td><asp:Label runat="server" ID="LastNameLabel"
Text='<%# Eval("LastName")' /></td>
</tr>
</ItemTemplate>
</asp:ListView>
lawbc 2008-07-23
  • 打赏
  • 举报
回复

//自定义排序方法
class ListViewItemComparer : IComparer
{
private int col;
public ListViewItemComparer()
{
col = 0;
}
public ListViewItemComparer(int column)
{
col = column;
}
public int Compare(object x, object y)
{
return String.Compare(((ListViewItem)x).SubItems[col].Text, ((ListViewItem)y).SubItems[col].Text);
}
// ColumnClick event handler.点击列的时候的事件
private void ColumnClick(object o, ColumnClickEventArgs e)
{
this.listView1.ListViewItemSorter = new ListViewItemComparer(e.Column);
}

}

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧