elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
28 Mayo 2012, 04:33  


Tema destacado: Únete al Grupo Steam elhacker.NET

+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (Moderador: [D4N93R])
| | | |-+  ayula con list<> en csharp
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ayula con list<> en csharp  (Leído 503 veces)
sirfranko

Desconectado Desconectado

Mensajes: 1


Ver Perfil
ayula con list<> en csharp
« en: 26 Abril 2011, 22:44 »

hola amigos soy nuevo aqui..
quiero pedirle su ayuda para resolver un problema que tengo en una aplicacion de windows form en csharp....
tengo una clase para productos
Código
class productos
{
  string clave;
 
public string Clave
{
get { return clave; }
set { clave = value; }
}
string nombre;
 
public string Nombre
{
get { return nombre; }
set { nombre = value; }
}
int cantidad;
 
public int Cantidad
{
get { return cantidad; }
set { cantidad = value; }
}
float precio;
 
public float Precio
{
get { return precio; }
set { precio = value; }
}
string marca;
 
public string Marca
{
get { return marca; }
set { marca = value; }
}
string fechaCaducidad;
 
public string FechaCaducidad
{
get { return fechaCaducidad; }
set { fechaCaducidad = value; }
}
 
string comentario;
 
public string Comentario
{
get { return comentario; }
set { comentario = value; }
}
public byte[] Imagen
{ get; set; }//es para almacenar imagen en la lista
}
}

una clase de operaciones productos...
Código
class operacionesProductos
{
 list<productos>listaProductos=new lis<productos>();
 
  public void agregar(productos producto)
 {
 listaproductos.add(producto);
 }
 public list<productos>consultagral()
 {
 return listaproductos;
 }
}

tengo un windows form donde guardo los datos el codigo del formulario es...

Código
Productos producto;
OperacionesProductos operacion;
List<Productos>listaAuxiliar;
 
public AgregarProductos()
{
operacion = new OperacionesProductos();
InitializeComponent();
}
 
private void button1_Click(object sender, EventArgs e)
{
 
OpenFileDialog fileDialog = new OpenFileDialog();
fileDialog.Filter = "Archivo JPG|*.jpg";
 
if (fileDialog.ShowDialog() == DialogResult.OK)
{
 imagenProducto.Image = Image.FromFile(fileDialog.FileName);
}
 
}
 
private void buttonAgregar_Click(object sender, EventArgs e)
{
producto = new Productos();
producto.Clave = textBoxClave.Text;
producto.Nombre = textBoxNombre.Text;
producto.Cantidad =int.Parse( textBoxCantidad.Text);
producto.Precio =Single.Parse( textBoxPrecio.Text);
producto.Marca = textBoxMarca.Text;
producto.FechaCaducidad = dateTimePicker1.Value.ToShortDateString().ToString ();
producto.Comentario = textBoxComentario.Text;
producto.Imagen = ImageHelper.ImageToByteArray(imagenProducto.Image) ;
operacion.AgregarProductos(producto);
 
MessageBox.Show(":::Producto agregado exitosamente:::");
textBoxClave.Text = textBoxNombre.Text = textBoxCantidad.Text = textBoxMarca.Text = textBoxPrecio.Text= textBoxComentario.Text= "";
textBoxClave.Focus();
}

aqui es la consulta general pero dentro de windows form donde realizo la operacion de agregar productos y los realiaza y visualiza en datgridview

Código
private void button1_Click(object sender, EventArgs e)
{
dataGridView1.Visible = true;
 
List<Productos> lista;
lista = operacion.ConsultaGral();
int fila = 0;
foreach (var item in lista)
{
dataGridView1.Rows.Add();
dataGridView1.Rows[fila].Cells[0].Value = item.Clave;
dataGridView1.Rows[fila].Cells[1].Value = item.Nombre;
dataGridView1.Rows[fila].Cells[2].Value = item.Cantidad;
dataGridView1.Rows[fila].Cells[3].Value = item.Precio;
dataGridView1.Rows[fila].Cells[4].Value = item.Marca;
dataGridView1.Rows[fila].Cells[5].Value =item.FechaCaducidad;
dataGridView1.Rows[fila].Cells[6].Value = item.Comentario;
dataGridView1.Rows[fila].Cells[7].Value = item.imagen;//deberia visualizar la imagen que agrego...
 
fila++;
}
}

el problema que tengo es de que al usar list<productos>listaAuxiliar;
dentro de otro windows form este no realiza nada.

el codigo es el siguiente..
Código
namespace proyectoProductos
{
public partial class consultaGeneral : Form
{
OperacionesProductos operacion;
public consultaGeneral()
{
operacion = new OperacionesProductos();
InitializeComponent();
}
 
private void button1_Click(object sender, EventArgs e)
{
dataGridView1.Visible = true;
 
List<Productos> lista;
lista = operacion.ConsultaGral();
int fila = 0;
foreach (var item in lista)
{
dataGridView1.Rows.Add();
dataGridView1.Rows[fila].Cells[0].Value = item.Clave;
dataGridView1.Rows[fila].Cells[1].Value = item.Nombre;
dataGridView1.Rows[fila].Cells[2].Value = item.Cantidad;
dataGridView1.Rows[fila].Cells[3].Value = item.Precio;
dataGridView1.Rows[fila].Cells[4].Value = item.Marca;
dataGridView1.Rows[fila].Cells[5].Value =item.FechaCaducidad;
dataGridView1.Rows[fila].Cells[6].Value = item.Comentario;
dataGridView1.Rows[fila].Cells[7].Value = item.imagen;//deberia visualizar la imagen que agrego...
 
fila++;
}
//este no visualiza nada
}

para mas detalles el programa consiste en un menu en donde se agregen productos,consulta general,consulta individual,modificar eliminar datos de la lista
y visualizarlos en un datagridview..

quiero saber cual es mi error

de antemano muchas gracias....


« Última modificación: 27 Abril 2011, 01:08 por Novlucker » En línea
neoncyber

Desconectado Desconectado

Mensajes: 91



Ver Perfil WWW
Re: ayula con list<> en csharp
« Respuesta #1 en: 27 Abril 2011, 00:18 »

No entiendo por que volver a recorrer la lista, simplemente usa la propiedad DataSource del DataGridView:
Código
private void button1_Click(object sender, EventArgs e)
{
dataGridView1.Visible = true;
 
List<Productos> lista;
lista = operacion.ConsultaGral();
 
dataGridView1.DataSource = lista
 
}
 


En línea

Código
#!/usr/bin/python
print "Visit:"
print "http:\\donkeysharp.blogspot.com"
 
[D4N93R]
Moderador
***
Desconectado Desconectado

Mensajes: 1.647


My software never has bugs. Its just features!


Ver Perfil WWW
Re: ayula con list<> en csharp
« Respuesta #2 en: 27 Abril 2011, 21:59 »

Otra cosa,

Las propiedades, si no vas a revisar nada en el get o en el set entonces es suficiente:

Código
public string NombrePropiedad { get; set; }

Si la quieres de solo lectura:

Código
public string NombrePropiedad { get; private set; }

De esa forma nada más puedes asignarle valores dentro de la clase y es readonly fuera de ella.

Un saludo!
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
COMO: Enviar Email en Csharp (C#)
.NET
winfuck 1 5,040 Último mensaje 17 Julio 2006, 02:34
por WarGhost
help con list
Programación Visual Basic
dark_soul 3 360 Último mensaje 18 Septiembre 2006, 17:57
por SheKeL_C$
de un txt a un list
Programación Visual Basic
sp26 9 689 Último mensaje 21 Noviembre 2006, 15:51
por ranslsad
List :S wtf!!!
Programación Visual Basic
schumacher 3 492 Último mensaje 29 Diciembre 2007, 15:41
por schumacher
list< list<int> > ¿Cómo me muevo aquí?
Programación C/C++
Kasswed 2 1,413 Último mensaje 17 Abril 2009, 23:13
por Kasswed
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines