如何在一个视图中显示两个WebGrid

时间:2013-09-28 15:22:17

标签: asp.net-mvc webgrid ultrawebgrid

我正面临这个问题,我想在一个视图中显示两个Webgrid,所以我为每个视图创建单独的视图,并使用

调用一个视图
 <table>
   <tr>
    <td>
        @{Html.RenderAction("NewRegisterCustomer", "AdminDeshboard");}
        @{Html.Action("NewRegisterCustomer", "AdminDeshboard");}
    </td>
  </tr>
  <tr>
    <td>
         @{Html.RenderAction("OrderSummary", "AdminDeshboard");}
        @{Html.Action("OrderSummary", "AdminDeshboard");}
    </td>
  </tr>

两个Webgrid都正常显示,但当我更改页面时,Webgrid另一个Webgrid也实现了

这是我的Webgrid代码

    <fieldset>
    @{
    ViewBag.Title = "WebGrid with Custom Paging, Sorting";
    WebGrid grid1 = new WebGrid(rowsPerPage: Model.PageSize);
    grid1.Bind(Model.Order,
              autoSortAndPage: false,
              rowCount: Model.TotalRows
    ); 
   }
     @grid1.GetHtml(
     fillEmptyRows: false,
     alternatingRowStyle: "alternate-row",
     headerStyle: "grid-header",
     footerStyle: "grid-footer",
    mode: WebGridPagerModes.All,
    firstText: "<< First",
    previousText: "< Prev",
     nextText: "Next >",
    lastText: "Last >>",


   columns: new[] {

    grid1.Column("OrderId",header: "  OrderId    ",style:"Width=100px"),
    grid1.Column("FirstName",header: "  FirstName    "),
    grid1.Column("LastName",header: "  LastName     "),
    grid1.Column("CartTotal",header: "  CartTotal    ",style:"Width=100px")

  })
 </fieldset>

当我改变这样的页面网址时            本地主机:49424 / HomeAdmin页= 2 它对两个网格都有影响,

有任何方法可以改变页面名称

   **page ---> Orderpage** 

请指导我

谢谢

1 个答案:

答案 0 :(得分:7)

这是WebGrid构造函数中fieldNamePrefix参数的用途。

From the documentation:

  

fieldNamePrefix

     

输入:System.String

     

应用于与WebGrid实例关联的所有查询字符串字段的前缀。此值用于支持同一网页上的多个WebGrid实例。

或者,如果您只想更改分页字段名称,则会有一个参数(如选择,排序字段和排序方向)。