none
Crear una lista a partir de una Clase y pasar a un ListView C# RRS feed

  • Pregunta

  • Estimados amigos buenas noches.

    quiero llenar un ListView con para una venta una fila una fila una fila y así según el pedido.

    tengo esta clase

    public partial class tblProducto
        {
            public int Id { get; set; }
            public int IdCategoria { get; set; }
            public int IdUnidadMedida { get; set; }
            public string Codigo { get; set; }
            public string Descripcion { get; set; }
            public Nullable<decimal> PrecioVenta { get; set; }
            public Nullable<decimal> Stock { get; set; }
            public System.DateTime FechaCreado { get; set; }
            public string NombreImagen { get; set; }
            public byte[] Imagen { get; set; }
            public int IdUsuario { get; set; }
        
            public virtual tblCategoria tblCategoria { get; set; }
            public virtual tblUnidad tblUnidad { get; set; }
            public virtual tblUsuario tblUsuario { get; set; }
        }

    ahora tengo la clase producto la cual hereda de tblproducto y es esta

    public class Producto : tblProducto
        {
            public int Cantidad { get; set; }
            public string NombreCortoMedida { get; set; }
            public decimal SubTotalFila { get  {return Cantidad * (decimal)PrecioVenta; } }
    		
    	public static List<tblProducto> Lista_Una_Venta(int id)
            {
                using (GourmetEntities db = new GourmetEntities())
                {
                    var ListproducsbyCategori = (from lt in db.tblProductoes
                                                 where lt.IdCategoria == id
                                                 select lt).ToList();
                    return ListproducsbyCategori;
            }
    
            }
    	}

    agregue algunos atributos que son estos

    public int Cantidad { get; set; }
            public string NombreCortoMedida { get; set; }
            public decimal SubTotalFila { get  {return Cantidad * (decimal)PrecioVenta; } }

    para que hice esto.

    para luego crear una lista con estos campos

    Codigo | Descripcion | Precio | Cantidad | SubTotal |

    desde un button voy a llamar al metodo y luego crear una lista y la lista que sera una fila a agregare al ListView

    pero aquí la pregunta como lo hago. por favor me pueden ayudar con ideas de como hacer esto, y si esto esta bien.

    por favor agradezco sus comentarios.

    Gracias

    Roberto

    martes, 17 de marzo de 2020 23:54

Respuestas

  • hola

    >>a partir de aquí debo llenar mi linea con el producto que el cliente me pida.

    exacto usas el Add() de la List<> de productos para agregar un nuevo item

    >>y luego esa linea agregarla a mi datagridView

    claro asignas la lista al DataSource del grid usando

    DataGridView1.DataSource = productoLista;

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    jueves, 19 de marzo de 2020 13:11

Todas las respuestas

  • Hola Roberto C. Melgar

     

    Gracias por levantar tu consulta en los foros de MSDN. Estamos analizando su pregunta y vamos a darle seguimiento para buscar la mejor repuesta pertinente al caso.

     

    Gracias por usar los foros de MSDN.

     


    Oscar Navarro

     ____

     

    Por favor recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema, es una forma común de reconocer a aquellos que han ayudado, y hace que sea más fácil para los otros visitantes encontrar la solución más tarde. 

     

    Microsoft ofrece este servicio de forma gratuita, con la finalidad de ayudar a los usuarios y la ampliación de la base de datos de conocimientos relacionados con los productos y tecnologías de Microsoft.  

     

    Este contenido es proporcionado "tal cual" y no implica ninguna responsabilidad de parte de Microsoft.

    miércoles, 18 de marzo de 2020 0:22
    Moderador
  • .

    quiero llenar un ListView con para una venta una fila una fila una fila y así según el pedido.

    Esto no se entiende.

    desde un button voy a llamar al metodo y luego crear una lista y la lista que sera una fila a agregare al ListView

    Como que la lista sea una fila. En todo caso sería: Cada item de la lista será una fila del listview.

    Tu pregunta es demasiado general. Tendías que preguntar cosas más especificas y en lo posible redactar un poco mejor, para que todos te entendamos. 

    miércoles, 18 de marzo de 2020 2:38
  • miércoles, 18 de marzo de 2020 3:00
  • Interesante estimado gracias.

    pero lo que necesito usar es un ListView

    pero muy amable no sabía esto

    Gracias

    miércoles, 18 de marzo de 2020 14:25
  • Perdon si no se logra entender.

    intentare ser mas claro.

    quiero llenar una lista con datos que le voy a introducir, algunos vendrán desde una consulta y otros desde un formulario

    por ejemplo el código descripción, precio-venta, unidad vienen desde una consulta y deben agregarse a la lista y la cantidad viene por ingreso desde un formulario para hacer la una fila de la venta.

    quedaría de esta forma

    CODIGO     | DESCRIPCION            | UNIDAD | PRECIOVENTA   | CANTIDAD   | SUBTOTAL |

    PAN-001       PAN INTEGRAL                 UN            10                       10                100     <<<<---- Este dato es el que debe ir al ListView y luego otro y luego otros tantos como el cliente pida. eso seria el detalle de la venta.

    ojala sea mas entendible 

    Gracias

    Roberto

    miércoles, 18 de marzo de 2020 14:37
  • hola

    quiero llenar una lista con datos que le voy a introducir, algunos vendrán desde una consulta y otros desde un formulario

    Si es una tabla porque no usas mejor el DataGridView, es mil veces mejor control para esto que describes que el ListView

    Que los datos provengas de una query a la db o del formulario es indistinto porque tu crearas instancias de tblProducto y la agregaras con el Add() a la lista que luego asignas al DataSource del grid, eso es todo

    >>agregue algunos atributos que son estos

    porque defines esas propiedades en Productos pero cuando defines Lista_Una_Venta() retornas una lista de tblProducto?, eso esta raro

    si devuelves tblProducto no vas a tener esas propiedades de Producto

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    miércoles, 18 de marzo de 2020 23:05
  • Leandro buenas noches.

    Toda la razon ahora mi metodo quedo de esta manera 

    public static List<Producto> Linea_Una_Venta(int id)
            {
                using (GourmetEntities db = new GourmetEntities())
                {
                    var LineaVenta = (from fila in db.tblProductoes
                                      where fila.IdCategoria == id
                                      select new Producto
                                      {
                                          Codigo = fila.Codigo,
                                          Descripcion = fila.Descripcion,
                                          NombreCortoMedida = fila.tblUnidad.NombreCorto,
                                          PrecioVenta = fila.PrecioVenta,
                                          Cantidad = 0,
                                      }).ToList();
    
                    return LineaVenta;
                }
    
            }

    ahora mi gran problema es el siguiente creo una lista de mi clase así.

    List<Producto> productoLinea = new List<Producto>();

    a partir de aquí debo llenar mi linea con el producto que el cliente me pida.

    debo hacer 

    productolinea.add(que va aquí)

    y luego esa linea agregarla a mi datagridView 

    Por favor mas orientación al respecto

    Roberto

    jueves, 19 de marzo de 2020 0:04
  • hola

    >>a partir de aquí debo llenar mi linea con el producto que el cliente me pida.

    exacto usas el Add() de la List<> de productos para agregar un nuevo item

    >>y luego esa linea agregarla a mi datagridView

    claro asignas la lista al DataSource del grid usando

    DataGridView1.DataSource = productoLista;

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    jueves, 19 de marzo de 2020 13:11