Gridview не отвечает на сортировку - PullRequest
0 голосов
/ 19 мая 2011

У меня проблемы с получением вида сетки для ответа на сортировку.Через этот форум я наткнулся на образец MSDN на http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.objectdatasource.sortparametername.aspx.. Я скопировал и собрал код, и отображение сетки отображается правильно, но не отвечает, когда я нажимаю на заголовки столбцов для сортировки данных.

По какой-то причине система не отвечает на щелчки заголовка столбца, но правильно реагирует на другие элементы управления на моих страницах, такие как гиперссылки и кнопки.Интересно, есть ли параметр Visual Studio 2008, который нужно настроить, или это потому, что я запускаю его на локальном хосте.Не кажется правдоподобным, но у меня закончились идеи.

Спасибо

<%--<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.CS"   Assembly="Samples.AspNet.CS" %>
--%><%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<script runat="server">
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:GridView ID="GridView1" 
            runat="server" 
            DataSourceID="ObjectDataSource1"
            AllowSorting="True">
        </asp:GridView>
        <asp:ObjectDataSource 
            ID="ObjectDataSource1" 
            runat="server" 
            SelectMethod="SelectMethod" 
            TypeName="Samples.AspNet.CS.SortingData" 
            SortParameterName="sortExpression">
        </asp:ObjectDataSource>
    </div>
    </form>
</body>
</html>

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

namespace Samples.AspNet.CS
{
    public class SortingData
    {
        public SortingData(){}
        private static DataTable table;
        private DataTable CreateData()
        {
            table = new DataTable();
            table.Columns.Add("Name", typeof(string));
            table.Columns.Add("Number", typeof(int));
            table.Rows.Add(new object[] { "one", 1 });
            table.Rows.Add(new object[] { "two", 2 });
            table.Rows.Add(new object[] { "three", 3 });
            table.Rows.Add(new object[] { "four", 4 });
            return table;
        }
        public DataView SelectMethod(string sortExpression)
        {
            if (table == null)
            {
                table = CreateData();
            }
            DataView dv = new DataView(table);
            dv.Sort = sortExpression;
            return dv;
            }
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...