文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>C# List列表内数据移动顺序(上下调整)

C# List列表内数据移动顺序(上下调整)

时间:2011-04-16  来源:iupme

有时候需要调整数据列表内的顺序.

现写成扩展方法.方便调用.

View Code
 public static partial class KK扩展方法
{
/// <summary>
/// KK上移s the specified data list.
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="dataList">The 数据列表 list.</param>
/// <param name="id">The 需要移动的id.</param>
/// <param name="位数">The 移动的 位数. 默认为1</param>
/// <returns></returns>
public static bool kk上移<T>(this IList<T> dataList, int id, int 位数 = 1)
{
return dataList.kk移动(id, id - 位数);
}

public static bool kk下移<T>(this IList<T> dataList, int id, int 位数 = 1)
{
return dataList.kk移动(id, id + 位数);
}

public static bool kk顶部<T>(this IList<T> dataList, int id)
{
return dataList.kk移动(id, 0);
}

public static bool kk底部<T>(this IList<T> dataList, int id)
{
return dataList.kk移动(id, dataList.Count - 1);
}

public static bool kk移动<T>(this IList<T> dataList, int 原ID, int 新ID)
{
if (原ID >= dataList.Count || 新ID >= dataList.Count || 原ID < 0 || 新ID < 0 || 原ID == 新ID) { return false; }

try
{
var sel
= dataList[原ID];
dataList.RemoveAt(原ID);
dataList.Insert(新ID, sel);
return true;
}
catch (Exception)
{
return false; ;
}

}


public static bool kk交换<T>(this IList<T> list, int 原ID, int 新ID)
{
if (原ID >= list.Count || 新ID >= list.Count || 原ID < 0 || 新ID < 0 || 原ID == 新ID) { return false; }

try
{
var sel
= list[原ID];
list[原ID]
= list[新ID];
list[新ID]
= sel;
return true;
}
catch (Exception)
{
return false; ;
}


}
}
相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载