【问题标题】:C# DataGridView BindingC# DataGridView 绑定
【发布时间】:2014-11-29 20:11:30
【问题描述】:

我有以下课程:

    class Channel
   {
    public int Number { get; private set; }

    public double HighestCoChannelSignal { get; private set; }
    public double HighestOverlappingSignal { get; private set; }

    public List<Network> NetsCoChannel { get; set; }
    public List<Network> NetsOverlapping { get; set; }
   }

我有一个 Channel 对象列表。我想将它绑定到 DataGridView 并显示:Number、HighestCoChannelSignal、HighestOverlappingSignal、NetsCoChannel.Count、NetsOverlapping.Count。例如,如果 HighestCoChannelSignal 是一个特殊值,则将 DataGridView 中的单元格值设置为我想要的值。我怎样才能做到这一点?

【问题讨论】:

    标签: c# binding datagridview


    【解决方案1】:

    您可以执行 LINQ 查询以将所需的数据获取到匿名类型的实例中并将结果绑定到网格,例如

    var data = channels.Select(c => new {c.Number,
                                         c.HighestCoChannelSignal,
                                         c.HighestOverlappingSignal,
                                         NetsCoChannelCount = c.NetsCoChannel.Count,
                                         NetsOverlappingCount = c.NetsOverlapping.Count})
                       .ToArray();
    

    您可以添加任何适合处理“特殊值”的代码。如果你想要一个具体的答案,那么你必须提供一个具体的描述。

    【讨论】:

    • 看起来不错,但我想知道这个解决方案的性能如何,因为我每 1 秒刷新一次数据。
    • 你为什么想知道什么时候可以简单地测试一下?如果数据来自数据库,那么首先以您想要的形式获取它可能会更快。如果这不是一个选项,你真的不会做得更好。
    猜你喜欢
    • 1970-01-01
    • 2013-05-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-14
    • 2021-11-04
    • 2014-07-14
    相关资源
    最近更新 更多