Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# asp.net中gridview列的排序_C#_Asp.net_Gridview_Gridview Sorting - Fatal编程技术网

C# asp.net中gridview列的排序

C# asp.net中gridview列的排序,c#,asp.net,gridview,gridview-sorting,C#,Asp.net,Gridview,Gridview Sorting,我有一个从数据库加载数据的gridview。数据第一次按日期时间排序显示在gridview中。在gridview的一列上,我希望允许排序,例如在main_post列上。我已经尝试过了,但是当我单击列的标题时,gridview仍然没有排序 这是我的gridview前端代码: <asp:DataGrid ID="Datagrid1" runat="server" AllowPaging="True" AllowSorting="True" OnSorting="C

我有一个从数据库加载数据的gridview。数据第一次按日期时间排序显示在gridview中。在gridview的一列上,我希望允许排序,例如在main_post列上。我已经尝试过了,但是当我单击列的标题时,gridview仍然没有排序

这是我的gridview前端代码:

<asp:DataGrid ID="Datagrid1" runat="server" 
    AllowPaging="True" 
    AllowSorting="True" 
    OnSorting="ComponentGridView_Sorting">
    <Columns>
        <asp:BoundColumn DataField="main_post" HeaderText="Header Post ID" 
            SortExpression="ComponentGridView_Sorting" />
    </Columns>
</asp:DataGrid>
我没有任何错误,我也不知道我的错误在哪里,有人能帮我解决这个问题吗


提前谢谢。

我得到了解决方案。希望这能帮助其他面临类似问题的人。在.aspx页面上,需要更改:

OnSorting=“ComponentGridView\u排序”

onsortcommand=“ComponentGridView\u排序”

然后将此代码放在aspx.cs上(后端代码):


简单,将Allowsorting属性设置为true,并在gridview中添加排序事件


不要紧张,这真的太容易了,按照我的步骤去做

步骤1创建GridView

 <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false" AllowPaging="true"  class="w3-table-all"
        OnPageIndexChanging="OnPageIndexChanging" PageSize="20" >
        <Columns>
            <asp:BoundField HeaderStyle-CssClass="w3-blue" ItemStyle-CssClass="w3-hover-green" ItemStyle-Width="250px" DataField="sn_no" HeaderText="ID" />
            <asp:BoundField HeaderStyle-CssClass="w3-blue" ItemStyle-CssClass="w3-hover-green" ItemStyle-Width="500px" DataField="name" HeaderText="Name" />
            <asp:BoundField HeaderStyle-CssClass="w3-blue" ItemStyle-CssClass="w3-hover-green" ItemStyle-Width="500px" DataField="mo" HeaderText="Mobile" />
            <asp:BoundField HeaderStyle-CssClass="w3-blue" ItemStyle-CssClass="w3-hover-green" ItemStyle-Width="500px" DataField="email" HeaderText="Email Id" />
            <asp:BoundField HeaderStyle-CssClass="w3-blue" ItemStyle-CssClass="w3-hover-green" ItemStyle-Width="500px" DataField="loc" HeaderText="Location" />
            <asp:BoundField HeaderStyle-CssClass="w3-blue" ItemStyle-CssClass="w3-hover-green" ItemStyle-Width="500px" DataField="date" HeaderText="Date" />
            <asp:BoundField HeaderStyle-CssClass="w3-blue" ItemStyle-CssClass="w3-hover-green" ItemStyle-Width="500px" DataField="day2" HeaderText="Day" />
            <asp:BoundField HeaderStyle-CssClass="w3-blue" ItemStyle-CssClass="w3-hover-green" ItemStyle-Width="500px" DataField="date" HeaderText="Date" />
            <asp:BoundField HeaderStyle-CssClass="w3-blue" ItemStyle-CssClass="w3-hover-green" ItemStyle-Width="500px" DataField="time" HeaderText="Time" />
        </Columns>

  </asp:GridView>
b) 。升序

cmd = new MySqlCommand("SELECT * FROM appointment ORDER BY sn_no DESC", con);
cmd = new MySqlCommand("SELECT * FROM appointment ORDER BY sn_no ASC", con);
用爱感谢#Vaibhav Yadav 维巴夫设计
如需了解更多…

您可以对您的答案进行一些解释。**请发表评论**
 <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false" AllowPaging="true"  class="w3-table-all"
        OnPageIndexChanging="OnPageIndexChanging" PageSize="20" >
        <Columns>
            <asp:BoundField HeaderStyle-CssClass="w3-blue" ItemStyle-CssClass="w3-hover-green" ItemStyle-Width="250px" DataField="sn_no" HeaderText="ID" />
            <asp:BoundField HeaderStyle-CssClass="w3-blue" ItemStyle-CssClass="w3-hover-green" ItemStyle-Width="500px" DataField="name" HeaderText="Name" />
            <asp:BoundField HeaderStyle-CssClass="w3-blue" ItemStyle-CssClass="w3-hover-green" ItemStyle-Width="500px" DataField="mo" HeaderText="Mobile" />
            <asp:BoundField HeaderStyle-CssClass="w3-blue" ItemStyle-CssClass="w3-hover-green" ItemStyle-Width="500px" DataField="email" HeaderText="Email Id" />
            <asp:BoundField HeaderStyle-CssClass="w3-blue" ItemStyle-CssClass="w3-hover-green" ItemStyle-Width="500px" DataField="loc" HeaderText="Location" />
            <asp:BoundField HeaderStyle-CssClass="w3-blue" ItemStyle-CssClass="w3-hover-green" ItemStyle-Width="500px" DataField="date" HeaderText="Date" />
            <asp:BoundField HeaderStyle-CssClass="w3-blue" ItemStyle-CssClass="w3-hover-green" ItemStyle-Width="500px" DataField="day2" HeaderText="Day" />
            <asp:BoundField HeaderStyle-CssClass="w3-blue" ItemStyle-CssClass="w3-hover-green" ItemStyle-Width="500px" DataField="date" HeaderText="Date" />
            <asp:BoundField HeaderStyle-CssClass="w3-blue" ItemStyle-CssClass="w3-hover-green" ItemStyle-Width="500px" DataField="time" HeaderText="Time" />
        </Columns>

  </asp:GridView>
cmd = new MySqlCommand("SELECT * FROM appointment ORDER BY sn_no DESC", con);
cmd = new MySqlCommand("SELECT * FROM appointment ORDER BY sn_no ASC", con);