Pregunta

quiero hacer una pregunta acerca de cómo hacer la paginación en ASP.net codificación con C#.

lo que tratamos de hacer es que, quiero mostrar algunos de los contenidos, tienen sistemas de columna y de múltiples filas.

en la realidad de codificación, tengo una lista de objetos, digamos de Un Objeto

class A {
   integer id;
   string name;
   string desc;
}

y desea mostrar en la página con pagable funcionalidad.

tengo que hacer la búsqueda de google, ASP.net ofrecemos gridview y listview, pero todos ellos requieren de un origen de datos, lo que significa que la tabla se unen directamente a la base de datos.

eso no es lo que quiero, coz mi lista de los objetos de venir de algún lugar más, no es de mi base de datos (e.g es un compuesto de un conjunto de datos, que generan en tiempo de ejecución)

así que de todos modos todavía puedo usar esos benifit componente, o tengo que hacerlo todo por mi cuenta para la paginación???

thx

¿Fue útil?

Solución

Una propiedad DataSource también aceptará un List<> o BindingList<>.

Para usar esto en el código:

protected void Page_Load(object sender, EventArgs e)
{
    var data = new List<Sample>();
    data.Add (...);

    GridView1.DataSource = data;
    GridView1.DataBind();
}

Y tal vez algo de lógica IsPostback, etc.

Otros consejos

Mi consejo es utilizar un GridView, con los que puede utilizar un ObjectDataSource, que puede tomar sus datos subyacente de un método de clase que usted especifique.Así que el método de la clase podría ser (siguiendo tu ejemplo de código):

public static List<A> GetAllAs()
{
    return myAs;
}

y la página aspx contendría

<asp:ObjectDataSource ID="MyODS" runat="server" TypeName="Namespace.Classname" SelectMethod="GetAllAs" />

<asp:GridView ID="grdMyGridView" runat="server" DataSourceID="MyODS" AllowPaging="True" ... >

El TypeName y SelectMethod atributos de la ObjectDataSource decir que el método, y donde, a utilizar para llenar el ODS con los datos.El AllowPaging="True" le da la paginación en el GridView automáticamente.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top