2011-04-12 2 views
0

내 뷰에 Telerik Grid가 있습니다.Telerik MVC 3 선택된 행이 Model 속성에 바인딩됩니다.

<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site1.Master" Inherits="System.Web.Mvc.ViewPage<Mitek.MobileImagingTest3.Models.JobFileStatisticsModel>" %> 

<퍼센트 사용 (Html.BeginForm()) {%>
- 나는 모델 재산권 선택한 행의 Datakey을 결합 할 수있는 방법이 있는지 알고 싶어요

  <div class="editor-label">  
       <br />       
       <label>Select Which Job:</label> 
      </div> 
      <div> 
       <%= Html.Telerik().Grid((IEnumerable<Mitek.MobileImagingTest3.Models.JobFileStatisticsModel>)ViewData["JobFilesDataList"]) 
         .Name("JobFileGrid") 
         .EnableCustomBinding(true) 
         //.BindTo((IEnumerable<Mitek.MobileImagingTest3.Models.JobFileStatisticsModel>)ViewData["JobFilesDataList"]) 
         .DataKeys(keys => keys.Add(o => o.JobFileId))      
         .Columns(columns => 
         { 
          columns.Bound(o => o.JobFileId).Hidden(true); 
          columns.Bound(o => o.JobFileName).Title("Job File Name").Width(500); 
          columns.Bound(o => o.JobFileVersion).Title("Job File Version").Width(200); 
          columns.Bound(o => o.JobFileDateCreated).Title("Date Created").Format("{0:MM/dd/yyyy}").Width(300); 
         })        
         .HtmlAttributes(new { style = "width: 1000px; font-family:arial; font-size: .9em;" })       
         .ClientEvents(events => events.OnRowSelected("onRowSelected")) 
         .DataBinding(dataBinding => dataBinding.Ajax().Select("SelectJobFile", "Admin"))       
         .Pageable() 
         .Sortable() 
         .Selectable() 
         .RowAction(row => 
         { 
          row.Selected = row.DataItem.JobFileId.Equals(ViewData["JobFileId"]); 
          //Model.JobFileId = ViewData["JobFileId"].ToString(); 
         })       
       %> 
       </div> 
       <div> 

       </div> 
       <div> 
        <br /> 
        <button type= "submit" name="button" class="t-button" >Run Report</button> 

       </div> 

    </div> 

    <% } %> 



enter code here 


    <script type="text/javascript"> 

     function onRowSelected(e) { 
      var id = e.row.cells[0].innerHTML;    
      alert(id); 
     } 

    </script> 

내 모델입니다 -

public class JobFileStatisticsModel 
{ 
    public string JobFileId { get; set; } 

    public string JobFileName { get; set; } 

    public string JobFileVersion { get; set; } 

    public string JobFileDateCreated { get; set; } 
} 

Grid의 선택된 행의 Datakey를 Model.JobFileId 속성에 바인딩하려면 어떻게합니까? 도와주세요.

감사합니다, 또한이 라인

<%= Html.Telerik().Grid((IEnumerable<Mitek.MobileImagingTest3.Models.JobFileStatisticsModel>)ViewData["JobFilesDataList"]) 

을 대체 <IEnumerable<Mitek.MobileImagingTest3.Models.JobFileStatisticsModel>>

에 SDD

답변

1

변경 <Mitek.MobileImagingTest3.Models.JobFileStatisticsModel> .
<%= Html.Telerik().Grid<Mitek.MobileImagingTest3.Models.JobFileStatisticsModel>(Model)

두 가지를 모두 바꾸면 문제가 해결됩니다. 이것은 내가 현재 그렇게하고있는 방식이므로 그것이 효과가 있다고 생각합니다. 그것이 나에게 메시지를 남기지 않으면 나는 내가 무엇을 생각해 낼 수 있는지를 볼 것입니다.