排序GridView asp.net

1392023093使用者

当分页被禁用时,我试图基于单击标题对GridView进行排序。

如何检索网格的内容?

GridView.Rows仅在选定页面上为我提供行。

我不想从数据库中进行其他选择,而是要订购它。而且,也不想将其保存在SessionState中。

我不知道什么是“默认” SortExpression的样子。

并且此SortExpression将按ID对DESC或ASC进行排序,但是如何进行一些自定义排序呢?还是按其他类型排序?

如何按ValueFromIncluded排序

//example
     <asp:GridView runat="server"
                    ID="GridID" 
                    SelectMethod="GridView_GetData"
                    ItemType="ItemType"           
                     AllowPaging="true">           
                    <Columns>
                        <asp:TemplateField HeaderText="Id" SortExpression="Id">
                            <ItemTemplate>
                               <asp:Label runat="server" Text='<%# Item?.Id%>'/>
                            </ItemTemplate>
                        </asp:TemplateField>
asp:TemplateField HeaderText="ValueFromIncluded" SortExpression="ValueFromIncluded">
                            <ItemTemplate>
                               <asp:Label runat="server" Text='<%# Item?.ValueFromIncluded.SomeOtherId%>'/>
                            </ItemTemplate>
                        </asp:TemplateField>
            </Columns>
            </asp:GridView>
            // SelectMethod.
          public IQueryable<ItemType> GridView_GetData()
                {           
                    IQueryable<ItemType> q = dbx.ItemType               
                        .Include(f => f.OtherType);
            }
你好,世界

因此,您需要做的是制作另一个类并在Grid中使用它。创建新的类ItemTypeForGrid,然后在aspx页面上ItemType =“ ItemType + ItemTypeForGrid”

 public class ItemTypeForGrid: ItemType
        {
            public string ValueFromIncluded{ get; internal set; }

        }

所以代码看起来像

 <asp:GridView runat="server"
       ID="GridID" 
       SelectMethod="GridView_GetData"
       ItemType="ItemType+ItemTypeForGrid"           
       AllowPaging="true">           
    <Columns>
          <asp:TemplateField HeaderText="Id" SortExpression="Id">
                                    <ItemTemplate>
                                       <asp:Label runat="server" Text='<%# Item?.Id%>'/>
                                    </ItemTemplate>
                                </asp:TemplateField>
        asp:TemplateField HeaderText="ValueFromIncluded" SortExpression="ValueFromIncluded">
                                    <ItemTemplate>
                                       <asp:Label runat="server" Text='<%# Item?.ValueFromIncluded.SomeOtherId%>'/>
                                    </ItemTemplate>
                                </asp:TemplateField>
                    </Columns>
                    </asp:GridView>

// SelectMethod。

public IQueryable<ItemTypeForGrid> GridView_GetData()
  {           
    IQueryable<ItemType> q = context.ItemType               
                     .Include(f => f.OtherType);
    // AND HERE SELECT WHAT YOU NEED IN GRID
    var qForGrid = q.Select( s=> new ItemTypeForGrid(){
                   ValueFromIncluded = r.ItemType.OtherType });
    }

这样您可以排序!但更重要的是,它只选择需要在GridView中看到的内容,而不选择所有包含的表中的所有属性。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在asp.net中排序GridView列

来自分类Dev

ASP.net Gridview不排序

来自分类Dev

在asp.net中对gridview列进行排序

来自分类Dev

使用asp.net的jQuery Table Sorter对Gridview进行排序

来自分类Dev

ASP.NET GridView 使用 DataTable.Select 排序

来自分类Dev

ASP.NET Gridview 排序不起作用

来自分类Dev

ASP.NET(4.5)GridView绑定到动态生成的SQL查询以及分页和排序吗?

来自分类Dev

使用Ajax在ASP.NET MVC中异步对GridView进行排序

来自分类Dev

如何在asp.net的GridView中对对象列表进行排序?

来自分类Dev

在将文件/列表绑定到gridview asp.net C#之前先对其进行排序

来自分类Dev

使用C#在ASP.NET 2中进行GridView排序

来自分类Dev

ASP.NET Gridview在第一次单击时未排序

来自分类Dev

基于行级C#对ASP.NET GridView控件进行排序

来自分类Dev

如何在asp.net的GridView中对对象列表进行排序?

来自分类Dev

如何对ASP.net Web应用程序中的GridView列进行排序

来自分类Dev

在排序的asp:GridView中分组

来自分类Dev

Asp.net GridView OnRowUpdating

来自分类Dev

ASP.Net打印GridView

来自分类Dev

ASP.NET Gridview 出类拔萃

来自分类Dev

LinqSql排序Asp.net

来自分类Dev

在vb.net gridview上排序

来自分类Dev

分页时ASP.NET Gridview错误

来自分类Dev

使用gridview asp.net的shoppingcart

来自分类Dev

访问GridView ItemTemplate控件ASP.NET

来自分类Dev

ASP.NET SqlDataSource Gridview问题

来自分类Dev

ASP.NET GridView编辑,无需editbutton

来自分类Dev

ASP.NET Webforms Gridview页脚

来自分类Dev

从右到左GridView For Asp.net MVC

来自分类Dev

ASP.NET GridView中的动态链接