C#RadGridView排序器在ImageColumn上递增-图像排序行为
我正在使用C#RadGridView排序器在ImageColumn上递增-图像排序行为,c#,sorting,telerik,radgridview,C#,Sorting,Telerik,Radgridview,我正在使用Telerik RadGridView展示一些我应该能够排序的东西。我用一个图像列创建了一个简短的测试示例。如果用户单击标题单元格,它会自动按升序和降序排序。这就是我想我需要的。我在RadGridView中填充了三幅图像,并将这些图像命名为“a.png”、“b.png”和“c.png”(“a.png”是红色的项目符号,“b.png”是黄色的项目符号,“c.png”是绿色的项目符号)。如果我按升序排序,应该是这样的: 红色(“a.png”) 黄色(“b.png”) 绿色(“c.png”
Telerik RadGridView
展示一些我应该能够排序的东西。我用一个图像列创建了一个简短的测试示例。如果用户单击标题单元格,它会自动按升序和降序排序。这就是我想我需要的。我在RadGridView
中填充了三幅图像,并将这些图像命名为“a.png”、“b.png”和“c.png”(“a.png”是红色的项目符号,“b.png”是黄色的项目符号,“c.png”是绿色的项目符号)。如果我按升序排序,应该是这样的:
- 红色(“a.png”)
- 黄色(“b.png”)
- 绿色(“c.png”)
- 红色(“a.png”)
- 绿色(“c.png”)
- 黄色(“b.png”)
foreach (string item in list)
{
if (item.Length < 5)
{
bullet = Properties.Resources.a; // red
}
else if (item.Length > 5)
{
bullet = Properties.Resources.b; // yellow
}
else if (item.Length == 5)
{
bullet = Properties.Resources.c; // green
}
radGridView1.Rows.Add(bullet);
}
radGridView1.Columns["imgCol"].SortOrder = RadSortOrder.Ascending;
foreach(列表中的字符串项)
{
如果(项目长度<5)
{
bullet=Properties.Resources.a;//红色
}
否则,如果(项目长度>5)
{
bullet=Properties.Resources.b;//黄色
}
否则如果(item.Length==5)
{
bullet=Properties.Resources.c;//绿色
}
radGridView1.Rows.Add(项目符号);
}
radGridView1.Columns[“imgCol”].SortOrder=RadSortOrder.Ascending;
所以我的问题是:
根据什么
RadGridView
对图像进行排序?我以为它是图像名称,但正如你所看到的,它不是。或者我添加项目符号的方式是否会导致排序行为出现问题?为了控制排序,请使用
将其放入
Sort命令
以设置升序和降序谢谢,但是使用SortDescriptor
类也不能正确排序。它与我以前使用的代码具有相同的效果。“排序命令”是什么意思?你是说一个事件?没有名为“Sort”或类似的事件,或者我就是找不到它。@Tyler您是将描述符放在列上,还是放在主模板上?
?我的操作与您完全相同。依此类推MasterTemplate
this.radGridView1.MasterTemplate.EnableSorting = true;
SortDescriptor descriptor = new SortDescriptor();
descriptor.PropertyName = "bullet column name";
descriptor.Direction = ListSortDirection.Ascending;
this.radGridView1.MasterTemplate.SortDescriptors.Add(descriptor);