syncfusion网格不显示在屏幕上

时间:2015-09-13 14:06:36

标签: asp.net-mvc-4 model-view-controller grid syncfusion

我正在尝试使用MVC应用在syncfusion网格上构建我的数据集。代码执行正确,没有任何错误,但网格没有显示在屏幕上。

我的控制器如下所示:

        public ActionResult PieT(FormCollection form)
        {


            MvcApplication2.Models.FMSData FMS1 = new MvcApplication2.Models.FMSData("100", "200");
             MvcApplication2.Models.FMSData FMS2=new MvcApplication2.Models.FMSData("10", "20");
             MvcApplication2.Models.FMSDatas FMSCollection = new MvcApplication2.Models.FMSDatas();
            FMSCollection.add(FMS1);
            FMSCollection.add(FMS2);
            ViewBag.DataSource = FMSCollection.FMSArray.ToList();
            return View();
        }

视图如下所示:

    @{
    Layout = null;
    }
    @using MvcApplication2.Models
    @using MvcApplication2.ViewModels
    @using Syncfusion.JavaScript.DataVisualization
    @using System.Collections
    <!DOCTYPE html>

    <html>
    <head>
    <meta name="viewport" content="width=device-width" />
    <title>PieT</title>
</head>
<body>
    <div>@using (Html.BeginForm("PieT", "Pie", FormMethod.Post))
        {
    <table>
        <tr>
            <td>Month</td>

            <td>  @Html.DropDownList("Months", ViewData["Months"] as SelectList, "--Select Months--") </td> 

            <td>
                Year</td>
            <td>
                @Html.DropDownList("Year") </td>
            <td>
                <input type="submit" value="Submit" />
            </td>

</tr>
    </table>
        }
           </div>@(Html.EJ().Grid<FMSData>("FlatGrid")
        .Datasource((IEnumerable<object>)ViewBag.datasource)
        .SelectionType(SelectionType.Single)

        .Columns(col =>
        {
            col.Field("TotalDistance").HeaderText("Total Distance Travelled").IsPrimaryKey(true).TextAlign(TextAlign.Right).Width(75).Add();
            col.Field("TotalFuelConsumed").HeaderText("Total Fuel Consumed").Width(90).Add();
        }))
</body>
</html>

2 个答案:

答案 0 :(得分:2)

  

代码执行正确,没有任何错误,但屏幕上没有显示网格。

我怀疑您的应用程序中没有引用ej.unobtrusive.min.js个文件。

当启用web.config中UnobtrusiveJavascriptEnabled的{​​{1}}键时,我们应该引用布局页面中的appSettings来呈现Syncfusion MVC控件。

ej.unobtrusive.min.js

请参阅以下帮助链接,了解相关文件以呈现网格。

http://help.syncfusion.com/aspnetmvc/getting-started#to-enable-unobtrusive-option-in-your-application

答案 1 :(得分:0)

您需要将Render Syncfusion网格渲染到您的查看页面。请参阅下面的代码

@(Html.EJ().Grid<FMSData>("FlatGrid")
        .Datasource((IEnumerable<object>)ViewBag.datasource)
        .SelectionType(SelectionType.Single)

        .Columns(col =>
        {
            col.Field("TotalDistance").HeaderText("Total Distance Travelled").IsPrimaryKey(true).TextAlign(TextAlign.Right).Width(75).Add();
            col.Field("TotalFuelConsumed").HeaderText("Total Fuel Consumed").Width(90).Add();
        })).Render();