繁体   English   中英

C#RadGridView SortOrder在ImageColumn上升序-图像排序行为

[英]C# RadGridView SortOrder ascending on ImageColumn - image sorting behaviour

我正在使用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;

所以我的问题是:

根据什么RadGridView排序的图像? 我以为它是图像名称,但是正如您所看到的那样。 还是我添加项目符号的方式导致排序行为出现任何问题?

为了控制您的排序,请使用排序描述符

this.radGridView1.MasterTemplate.EnableSorting = true;

SortDescriptor descriptor = new SortDescriptor();
descriptor.PropertyName = "bullet column name";
descriptor.Direction = ListSortDirection.Ascending;
this.radGridView1.MasterTemplate.SortDescriptors.Add(descriptor);

将其放在“ Sort Command中以设置升序和降序

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM