C# UltraTree列未对数值进行排序
我试图使用可排序的winTree(UltraNode)创建一个网格,我通过编程创建它,通过代码添加列和节点。显示网格时,我可以按字母列排序,但Id和另一个数字字段没有排序 我正在做的事情的简化是:C# UltraTree列未对数值进行排序,c#,infragistics,ultratree,C#,Infragistics,Ultratree,我试图使用可排序的winTree(UltraNode)创建一个网格,我通过编程创建它,通过代码添加列和节点。显示网格时,我可以按字母列排序,但Id和另一个数字字段没有排序 我正在做的事情的简化是: var tree = new UltraTree(); tree.override.ColumnSet.Columns.Add(new UltraTreeNodeColumn{text = "Name"}); tree.override.ColumnSet.Columns.Add(new Ultr
var tree = new UltraTree();
tree.override.ColumnSet.Columns.Add(new UltraTreeNodeColumn{text = "Name"});
tree.override.ColumnSet.Columns.Add(new UltraTreeNodeColumn{text = "Id"});
var treeNode1 = new UltraTreeNode();
treeNode1.Cells["Name"].Value = name1;
treeNode1.Cells["Id"].Value = Id1;
tree.Nodes.Add(treeNode1);
var treeNode2 = new UltraTreeNode();
treeNode2.Cells["Name"].Value = name2;
treeNode2.Cells["Id"].Value = Id2;
tree.Nodes.Add(treeNode2);
查看网格时,我可以使用列标题对字母值进行排序,但单击Id标题时没有排序
谢谢尝试将数据类型添加到该列
tree.Override.ColumnSet.Columns.Add(new UltraTreeNodeColumn
{Text = "Id", DataType = typeof(Int32)});
原来网格是对结果进行分组的,所以ID按顺序排列,但首先按它们所属的元素进行分组Id1和Id2的类型是什么?如果它们是您的类型,那么您可能需要在列中指定一个排序比较程序:@alhalama谢谢,但我已经证实了这一点,并且没有任何影响。那么Id1和Id2是什么?您使用的是自定义类型吗?这些是整数变量吗?还是没有。。。我只是不明白字母排序是如何工作的,而数字排序是如何工作的,在同一个控件中…如果你有这样一个结果排序1,10,11,2,21,3,这是因为列被认为是字母排序,而不是数字排序。