【问题标题】:Binding Object Properties to Specific Telerik RadGridView Columns将对象属性绑定到特定 Telerik RadGridView 列
【发布时间】:2012-03-20 22:41:23
【问题描述】:

我在其 NeedDataSource 事件中定义 Telerik RadGridView 控件的数据源。有问题的数据源是一个 IEnumerable 对象集合。

例如,RadGridView 中的列顺序是Title | Description | Date。如果我的收藏中有以下对象...

class Obj{

  public DateTime Date {get;set;}
  public string Title {get;set;}
  public string Description {get;set;}

}

在使用RadGridView1.DataSource();时,如何确保对象属性值以正确的顺序分配给 RadGridView 列?

【问题讨论】:

  • 您好,我的回答对您有帮助吗?如果没有,请告诉我如何改进它。谢谢。

标签: c# asp.net .net visual-studio telerik


【解决方案1】:

我不确定我是否完全理解您的问题。你在用Auto generate columns at runtime吗?如果不是:列顺序由您以声明方式定义,如下所示:

<telerik:RadGrid ID="RadGrid1" runat="server" AutoGenerateColumns="false" OnNeedDataSource="RadGrid1_NeedDataSource">
        <MasterTableView DataKeyNames="ObjId">
                 <Columns>
                        <telerik:GridBoundColumn UniqueName="Date" HeaderText="Date" DataField="Date" DataFormatString="{0:M/dd/yyyy}">
                        </telerik:GridBoundColumn>
                        <telerik:GridBoundColumn UniqueName="Title" HeaderText="Title" DataField="Title">
                        </telerik:GridBoundColumn>
                        <telerik:GridBoundColumn UniqueName="Description" HeaderText="Description" DataField="Description">
                        </telerik:GridBoundColumn>
                    </Columns>
    </MasterTableView>
    </telerik:RadGrid1>

注意DataField 告诉RadGrid 使用哪个对象属性。如果我完全错过了你的问题,请告诉我。

【讨论】:

    【解决方案2】:

    如果您要自动生成列并希望以编程方式对其重新排序,您可以使用讨论过的 SwapColumns 方法here。列应按字母顺序自动添加,因此只需调用以下内容即可。

    grid.MasterTableView.SwapColumns("Date","Title");
    

    将它放在 DataBound 事件处理程序中对我有用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-03
      • 1970-01-01
      • 2010-10-07
      • 2013-01-27
      • 2018-09-13
      相关资源
      最近更新 更多