2017-06-16 21 views
0

私はVisual Studio 2015を使用しており、Telerikを使用してRadGridに自分のエンティティの簡単なリストを作成しています。私はコンパイルエラーまたは実行時エラーが表示されません。ページはレンダリングされますが、グリッドはありません(Gridが必要な細い線があり、カラムやデータなどは表示されません)。Telerik UI Radgrid厳密に型指定されたGridTemplateColumnの問題

私はEFを使用しています。ここに私のエンティティである:

public class Event 
{ 
    public Event() 
    { 
     Comments = new List<Comment>(); 
    } 

    [ScaffoldColumn(false)] 
    public int EventID { get; set; } 

    [Required,MaxLength(50), Display(Name ="Event Name")] 
    public string EventName { get; set; } 

    [MaxLength(500)] 
    public string EventDescription { get; set; }   


    public DateTime EventDate { get; set; } 
    //public List<User> Attending { get; set; } // might have to remove this: 

    public ICollection<Comment> Comments { get; set; } 

    public bool CommentLock { get; set; } // A property to enable/stop users from commenting 


    // set raltionships 
    // FK to Venue 
    public int VenueID { get; set; } 

    //Nav properties: 
    public Venue Venue { get; set; } 

} 

マイwebForm.aspxファイル

<%@ Page Title="" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="Test.aspx.cs" Inherits="WebApp.Test" %> 

<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %> 
<asp:Content ID="Content1" ContentPlaceHolderID="MainContent" runat="server"> 

    <br /> 
     <telerik:RadGrid 
      ID="RadGrid1" 
      runat="server" 
      AutoGenerateColumns="False" 
      SelectMethod="GetEvents" AllowPaging="True" AllowSorting="True" GridLines="None"> 

      <ClientSettings> 
       <Selecting AllowRowSelect="True" /> 
      </ClientSettings> 

      <MasterTableView ItemType="DomainModels.Event"> 
       <Columns> 
        <telerik:GridTemplateColumn HeaderText="Event ID Number:"> 
         <ItemTemplate><%# Item.EventID %></ItemTemplate> 
        </telerik:GridTemplateColumn> 

        <telerik:GridTemplateColumn HeaderText="Event Name:"> 
         <ItemTemplate><%# Item.EventName %></ItemTemplate> 
        </telerik:GridTemplateColumn> 
       </Columns> 
      </MasterTableView> 

      <FilterMenu EnableTheming="True"> 
       <CollapseAnimation Type="OutQuint" Duration="200"></CollapseAnimation> 
      </FilterMenu> 

     </telerik:RadGrid> 

</asp:Content> 

aspx.csファイル

using System; 
using System.Linq; 
using DomainModels; 
using DataLayer; 

namespace WebApp 
{ 
    public partial class Test : System.Web.UI.Page 
    { 
     protected void Page_Load(object sender, EventArgs e) 
     { 

     } 


     public IQueryable<Event> GetEvents() 
     { 
      CoffeeEventsDBContext context = new CoffeeEventsDBContext(); 
      IQueryable<Event> returnSet = context.Events; 
      return returnSet; 
     } 

    } 
} 

の背後に私のコード私は私が代わりのページを取得し、これを実行しますグリッドのテーマに一致する細い水平線が表示されますが、列は表示されません。

は、私はまたのaspxファイルに次の行にブレークポイントを設定します。

<ItemTemplate><%# Item.EventID %></ItemTemplate> 

しかし、ブレークポイントがヒットされることはありません。

私は間違っていますか?あなたの助けに感謝。 WebFroms/Telerikが新しくなりました。

答えて

0

モデルバインディング構文を使用する必要はありません.RadGridは自動的にバインドされた列でこれを行います。まず、selectメソッドが実際に何かを返していることを確認してから、グリッド列に対してこれを試してください。

<MasterTableView> 
       <Columns> 
        <telerik:GridBoundColumn DataField="EventID" HeaderText="Event ID Number" /> 
        <telerik:GridBoundColumn DataField="EventName" HeaderText="Event Name:" />       
       </Columns> 
      </MasterTableView> 
関連する問題