【问题标题】:Show columns in specific display order by default in GridView在 GridView 中默认以特定的显示顺序显示列
【发布时间】:2013-06-05 16:32:19
【问题描述】:

我正在尝试找出让所有用户以默认顺序(从左到右)开始我的列的最简单方法。

我尝试将它们设置在我用来填充数据源的IList<T> 中,但这不起作用。

除了按照本页说明手动设置每一列之外,我还有其他选择吗-->Reordering Columns

【问题讨论】:

  • 你的意思是你想显示列吗?
  • 从左到右....所以我有 Col_1、Col_2、Col_3、Col_4 并且我希望它们显示,从 Col_3 的左侧(或索引 0)开始,然后是 Col_2、Col_4, Col_1。有道理。我不是在这里谈论可见性。
  • 你检查我的答案了吗?

标签: c# .net winforms gridview telerik


【解决方案1】:

查看以下文档。

http://www.telerik.com/help/winforms/gridview-populating-with-data-tips-when-binding-to-custom-collections.html

您几乎可以定义列的外观。代码如下:

radGridView1.MasterTemplate.AutoGenerateColumns = false;
radGridView1.MasterTemplate.Columns.Add(new GridViewTextBoxColumn("Name"));
radGridView1.MasterTemplate.Columns.Add(new GridViewTextBoxColumn("Attributes"));
radGridView1.MasterTemplate.Columns.Add(new GridViewTextBoxColumn("LastAccessTime"));
radGridView1.MasterTemplate.Columns.Add(new GridViewTextBoxColumn("CreationTime"));
DirectoryInfo directory = new DirectoryInfo("C:\\");
FileSystemInfo[] filesInDirectory = directory.GetFileSystemInfos();
radGridView1.DataSource = filesInDirectory;

如您所见,我已设置不自动生成列。然后我定义我想要的列。然后只需绑定数据源。这将为您提供所需的订单

如果这对你有用,请告诉我。

【讨论】:

    【解决方案2】:

    我在 VB.NET 上行走,我做了这样的事情..

    dgv.Columns(Col4).DisplayIndex = 0
    dgv.Columns(Col3).DisplayIndex = 1
    dgv.Columns(Col2).DisplayIndex = 2
    dgv.Columns(Col1).DisplayIndex = 3
    

    在 C# 中你可以找到它here

    【讨论】:

      【解决方案3】:

      网格将根据对象中的字段读取并创建其列:

          class MyObj
          {
              public string Column2 { get; set; }
              public int Column1 { get; set; }
          }
      

      上面的代码会先在你的网格中添加 Column2,然后是 Column1,而下面的代码会做相反的事情:

          class MyObj
          {
                 public int Column1 { get; set; }
                 public string Column2 { get; set; }
          }
      

      DataTables 也是如此,它只是按照列的顺序读取列。

      要对它们重新排序,您可以使用您已经发现的 Move 方法。

      【讨论】:

      • 您会这么认为,但事实并非如此。至少不使用 IList 和 RadGridView 控件。不过还是谢谢。
      • 在解决您的问题之前,我已经在样本中对此进行了测试,这就是我的行为方式。
      猜你喜欢
      • 1970-01-01
      • 2011-11-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-07
      • 1970-01-01
      • 2021-04-01
      • 1970-01-01
      • 2015-12-25
      相关资源
      最近更新 更多