如题,当我把堆数字传到datatable 然后再用dataview排序时,9总在最上面,
我这些数字式 INT型,
我这些数字式 INT型,
解决方案 »
- 高智商算法,请各位大牛指教谢谢,急................
- 如何实现类似唱K中字符有渐变的效果(C#)
- C#如何产生散列性比较好的随机数序列?时间用多一些都可以~~
- C/S下的水晶报表中如何设置标题?
- 请问哪里有视频教学资料下载?各种类型都可以
- 怎么在网络上获得标准时间?
- 请教一个用C#在winform下做GDI+画图的问题
- CrystalReport的问题:生成CrystalReport预览的时候出现“Invalid Report Source”应该怎样解决呢?
- 查询一百万条数据就需要20多秒的时间
- 如何将通过WEB收到的邮件生成eml(OUTLOOK EXPRESS)文件?
- 如何把多个range合并成一个range
- JavaScriptSerializer.Deserialize问题
dt.Columns.Add("Sum");
DataRow dr = dt.NewRow();
dr["Sum"] = 1;
dt.Rows.Add(dr);
dr = dt.NewRow();
dr["Sum"] = 2;
dt.Rows.Add(dr);
dr = dt.NewRow();
dr["Sum"] = 3;
dt.Rows.Add(dr);
dr = dt.NewRow();
dr["Sum"] = 4;
dt.Rows.Add(dr);
dr = dt.NewRow();
dt.Rows.Add(dr);
dt.DefaultView.Sort = "Sum ASC";
DataTable dtTemp = dt.DefaultView.ToTable();
dtTemp 即按你需要排序的表。
根据对应的值排序即可
a[0, 0] = 1;
a[0, 1] = 10;
a[1, 0] = 2;
a[1, 1] = 15;
a[2, 0] = 3;
a[2, 1] = 9;
a[3, 0] = 4;
a[3, 1] = 12; DataTable dt = new DataTable();
dt.Columns.Add("a");
dt.Columns.Add("b");
if (a[2, 1] > a[1, 1])
{
System.Console.Write("9比15还打?");
}
else
{
System.Console.WriteLines("还是15大些!");
} for (int i = 0; i < 4; i++)
{
DataRow dr = dt.NewRow();
for (int j = 0; j < 2; j++)
{
if (j == 0)
{
dr[0] = a[i, 0];
}
else
{
dr[1] = a[i, 1];
}
}
dt.Rows.Add(dr);
}
DataView dv = new DataView(dt);
dv.Sort = "b desc";
可是我以前写过一个就可以啊 并且 这个我用dv.Sort = "a desc";
dv.Sort = "a asc";
都是 OK 为什么 是第二列的时候就不行呢 ??/
dt.Columns.Add("b",typeof(int));
dt.Columns.Add("b");这是INT型?忽悠鬼呢!看#12楼
{
public DataColumn(string columnName) : this(columnName, typeof(string), null, MappingType.Element){}
SP1234 你说的那些太高深了,
谁没事去看.netframework源码啊 是不是 !!!
{
public DataColumn Add(string columnName)
{
DataColumn column = new DataColumn(columnName);
this.Add(column);
return column;
}
因此当你向 dt.Columns 插入一个列名时,调用这个方法,它要 new 一个DataColumn出来,默认地就是 typeof(string)作为类型。