• C/C++

 #411776  por c0ded93
 
Hola amigos una pregunta tengo un listbox con varios items, lo que quiero hacer es cuando de click sobre uno de ellos pasarlo
a un textbox..

Ojala me puedan ayudar.. saludos
 #411786  por $DoC
 
Esto es muy sencillo, no hacía falta abrir un tema xD
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
    textBox1.Text = Convert.ToString(listBox1.SelectedItem);
}
Pones ese código para que cuando eliges un item se ponga el contenido en el textbox.

Un saludo
 #411788  por c0ded93
 
$DoC escribió:Esto es muy sencillo, no hacía falta abrir un tema xD
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{

    textBox1.Text = Convert.ToString(listBox1.SelectedItem);
}
Pones ese código para que cuando eliges un item se ponga el contenido en el textbox.

Un saludo
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

using Capa_Negocio;
using Capa_Entidad;
namespace Capa_Presentacion
{
    public partial class FrmProgram2 : Form
    {
        public FrmProgram2()
        {
            InitializeComponent();
        }
        CLSEntidad objEntidad = new CLSEntidad();
        CLSNegocio objNegocio = new CLSNegocio();
        private void FrmProgram2_Load(object sender, EventArgs e)
        {
            listBox1.DataSource = objNegocio.ListarGenero();
            listBox1.DisplayMember = "des_gen";
        }

        private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
             //Tu solucion.... 
            txtlisb.Text = Convert.ToString(listBox1.SelectedItem);
            // listBox1.SelectedItem.ToString();
            objEntidad.Genero = txtlisb.Text;
            cbpelicula.DataSource = objNegocio.BuscarPeliculaGenero(objEntidad);
            cbpelicula.DisplayMember = "nom_pel";
            }
   

        private void cbpelicula_SelectedIndexChanged(object sender, EventArgs e)
        {

        }
    }
}
ERROR:

Imagen


Thanx..
 #411790  por $DoC
 
Adjunto proyecto para que veas como yo lo tengo funcionando.

http://dfiles.eu/files/m3kaxpc73

Un saludo
 #411791  por c0ded93
 
$DoC escribió:Adjunto proyecto para que veas como yo lo tengo funcionando.

http://dfiles.eu/files/m3kaxpc73

Un saludo

Lo que quiero hacer es esto!

Imagen

acá te dejo la db: http://www.sendspace.com/file/xxiax2 (SQL SERVER)

acá te dejo los procedimientos Almacenados:
use BDVIDEOS2012
if exists(select * from sysobjects where name='Listar_Genero' and type='p')
drop proc Listar_Genero
go
create proc Listar_Genero
as
select des_gen from Genero

if exists(select * from sysobjects where name='Listar_Pelicula' and type='p')
drop proc Listar_Pelicula
go
create proc Listar_Pelicula
@nom varchar(80)
as
select p.nom_pel from peliculas p,Genero g
where g.cod_gen=p.cod_gen and [email protected]

if exists(select * from sysobjects where name='Sp_Alquileres' and type='p')
drop proc Sp_Alquileres
go
create proc Sp_Alquileres
@nom varchar(80)
as
select a.num_alq,convert(varchar,a.fecha_pres,103) as Fecha_Prestamo,convert(varchar,a.fecha_dev,103)
as Fecha_Dev,SUM(d.cant) as Cant_Copias
from alquiler a,peliculas p,detalle_alquiler d
where a.num_alq=d.num_alq and d.cod_pel=p.cod_pel and [email protected]
group by  a.num_alq,convert(varchar,a.fecha_pres,103),convert(varchar,a.fecha_dev,103)
go

Ojala Me puedas Ayudar!


saludos e Gracias
 #411799  por Fakedo0r
 
En la clase CLS_Funciones tienes la variable de la conexión a la base de datos, necesitas modificarla, supongo que eso si puedes hacer (?).

Imagen

Codigo Fuente


Otros haciendo la practica por ti, no aprendes nada.
Saludos.
 #411834  por c0ded93
 
Fakedo0r escribió:En la clase CLS_Funciones tienes la variable de la conexión a la base de datos, necesitas modificarla, supongo que eso si puedes hacer (?).

Imagen

Codigo Fuente


Otros haciendo la practica por ti, no aprendes nada.
Saludos.

No es mi Practica baje un curso de C# y venia eso y queria resolverlo XD!
apenas voy a la escuela bro, igual gracias.
 #411871  por c0ded93
 
Fakedo0r escribió:En la clase CLS_Funciones tienes la variable de la conexión a la base de datos, necesitas modificarla, supongo que eso si puedes hacer (?).

Imagen

Codigo Fuente


Otros haciendo la practica por ti, no aprendes nada.
Saludos.

Gracias

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.Sql;
using System.Data.SqlClient;

namespace Practica_DB
{
    public partial class FRM_Main : Form
    {
        List<CLS_Genero> tListaGenero = new List<CLS_Genero>();
        List<CLS_Pelicula> tListaPelicula = new List<CLS_Pelicula>();

        public FRM_Main()
        {
            InitializeComponent();
        }

        private void FRM_Main_Load(object sender, EventArgs e)
        {
            cargarGenero();
        }

        private void LSB_Categorias_Click(object sender, EventArgs e)
        {
            cargarPeliculas(tListaGenero.ElementAt(LSB_Categorias.SelectedIndex).getCodigo());
        }

        private void CMB_Pelicula_SelectedIndexChanged(object sender, EventArgs e)
        {
            cargarAlquiler(tListaPelicula.ElementAt(CMB_Pelicula.SelectedIndex).getCodigo());
        }

        private void cargarGenero()
        {
            LSB_Categorias.Items.Clear();
            tListaGenero.Clear();

            SqlDataReader tSqlReader = CLS_Funciones.sqlQuery("SELECT cod_gen, des_gen FROM Genero");

            while (tSqlReader.Read())
            {
                CLS_Genero tGenero = new CLS_Genero(tSqlReader.GetValue(0).ToString(), tSqlReader.GetValue(1).ToString());
                tListaGenero.Add(tGenero);

                LSB_Categorias.Items.Add(tSqlReader.GetValue(1).ToString());
            }

            CLS_Funciones.cerrarConexion();
        }

        private void cargarPeliculas(String sCodigoGenero)
        {
            CMB_Pelicula.Items.Clear();
            tListaPelicula.Clear();

            SqlDataReader tSqlReader = CLS_Funciones.sqlQuery("SELECT cod_pel, nom_pel FROM peliculas WHERE cod_gen = '" + sCodigoGenero + "'");

            while (tSqlReader.Read())
            {
                CLS_Pelicula tPelicula = new CLS_Pelicula(tSqlReader.GetValue(0).ToString(), tSqlReader.GetValue(1).ToString());
                tListaPelicula.Add(tPelicula);

                CMB_Pelicula.Items.Add(tSqlReader.GetValue(1).ToString());
            }

            CLS_Funciones.cerrarConexion();
        }

        private void cargarAlquiler(String sCodigoPelicula)
        {
            String sQuery = "SELECT a.fecha_pres, a.fecha_dev, da.num_alq, da.cant " +
                            "FROM alquiler a INNER JOIN detalle_alquiler da " +
                            "ON a.num_alq = da.num_alq " +
                            "AND da.cod_pel = '" + sCodigoPelicula + "'";

            Console.WriteLine(sQuery);

            SqlDataAdapter tSqlDataAdapter = new SqlDataAdapter(sQuery, CLS_Funciones.CST_CONNECTION_STRING);
            SqlCommandBuilder tCommandBuilder = new SqlCommandBuilder(tSqlDataAdapter);

            DataTable tTabla = new DataTable();
            tTabla.Locale = System.Globalization.CultureInfo.InvariantCulture;
            tSqlDataAdapter.Fill(tTabla);

            DGV_Alquiler.DataSource = tTabla;
        }

        private void LSB_Categorias_SelectedIndexChanged(object sender, EventArgs e)
        {

        }
    }
}
Me podrías explicar esas lineas Saludos.
 #411888  por Fakedo0r
 
Espero que me haya explicado lo bastante para que entiendas pero en todo caso si no sabes POO (Programación orientada a objetos) y ADO.NET (Componentes de .NET para tratar base de datos), entonces te costara.
public partial class FRM_Main : Form
    {
        List<CLS_Genero> tListaGenero = new List<CLS_Genero>(); // Array de CLS_Genero
        List<CLS_Pelicula> tListaPelicula = new List<CLS_Pelicula>(); // Array de CLS_Pelicula

        public FRM_Main() 
        {
            InitializeComponent(); // Esto es por defecto, es para inicializar los componentes de la GUI
        }

        private void FRM_Main_Load(object sender, EventArgs e)
        {
            cargarGenero(); // Llamamos la funcion para cargar el array con generos y mostrar en el listbox
        }

        private void LSB_Categorias_Click(object sender, EventArgs e)
        {
            // Aquí con el index seleccionado en el listbox obtenemos el codigo del genero y pasamos como argumento
            // a la función para posteriormente obtener todas las peliculas de este genero
            cargarPeliculas(tListaGenero.ElementAt(LSB_Categorias.SelectedIndex).getCodigo()); 
        }

        private void CMB_Pelicula_SelectedIndexChanged(object sender, EventArgs e)
        {
            // Aquí con el index seleccionado en el combobox obtenemos el codigo de la pelicula
            // y nuevamente pasamos como argumento a la funcion para obtener la lista de alguiler 
            // relacionada con esta pelicula
            cargarAlquiler(tListaPelicula.ElementAt(CMB_Pelicula.SelectedIndex).getCodigo());
        }

        // No servira para cargar todos los generos disponibles en la base de datos
        private void cargarGenero()
        {
            // Limpiamos el listbox
            LSB_Categorias.Items.Clear();
            // Limpiamos el array
            tListaGenero.Clear();

            // SqlDataReader <= Esta clase nos sirve para leer de forma secuencial en una base de datos
            // Aquí le paso mi query y el resultado lo almaceno en el objeto "tSqlReader"
            SqlDataReader tSqlReader = CLS_Funciones.sqlQuery("SELECT cod_gen, des_gen FROM Genero");

            // Aquí le digo, mientras lea, es decir, mientras haya algo pa leer que siga
            while (tSqlReader.Read())
            {
                // Aquí instanciamos nuevo objeto y le paso como argumentos el codigo de genero y el nombre
                CLS_Genero tGenero = new CLS_Genero(tSqlReader.GetValue(0).ToString(), tSqlReader.GetValue(1).ToString());
                // Aquí le añado al array de generos
                tListaGenero.Add(tGenero);
                // Aquí añado el nombre al listbox
                LSB_Categorias.Items.Add(tSqlReader.GetValue(1).ToString());
            }

            // Cierro la conexion a la base de datos
            CLS_Funciones.cerrarConexion();
        }

        // No servira para cargar todos las peliculas disponibles de un genero especifico
        private void cargarPeliculas(String sCodigoGenero)
        {
            // Limpìamos el combobox
            CMB_Pelicula.Items.Clear();
            // Limpiamos el array de peliculas
            tListaPelicula.Clear();

            // Aquí, otra vez le paso mi query y el resultado lo almaceno en el objeto "tSqlReader"
            SqlDataReader tSqlReader = CLS_Funciones.sqlQuery("SELECT cod_pel, nom_pel FROM peliculas WHERE cod_gen = '" + sCodigoGenero + "'");

            // Aquí le digo, mientras lea, es decir, mientras haya algo pa leer que siga
            while (tSqlReader.Read())
            {
                // Aquí instanciamos nuevo objeto y le paso como argumentos el codigo de genero y el nombre
                CLS_Pelicula tPelicula = new CLS_Pelicula(tSqlReader.GetValue(0).ToString(), tSqlReader.GetValue(1).ToString());
                // Aquí le añado al array de peliculas
                tListaPelicula.Add(tPelicula);
                // Aquí añado el nombre al combobox
                CMB_Pelicula.Items.Add(tSqlReader.GetValue(1).ToString());
            }

            // Cierro la conexion a la base de datos
            CLS_Funciones.cerrarConexion();
        }

        // No servira para cargar todos los alquileres disponibles de una pelicula especifica
        private void cargarAlquiler(String sCodigoPelicula)
        {
            // Mi consulta
            String sQuery = "SELECT a.fecha_pres, a.fecha_dev, da.num_alq, da.cant " +
                            "FROM alquiler a INNER JOIN detalle_alquiler da " +
                            "ON a.num_alq = da.num_alq " +
                            "AND da.cod_pel = '" + sCodigoPelicula + "'";

            // SqlDataAdapter <= Es un clase que nos sirve para obtener o guardar datos
            // Le paso mi query y la conexion a la base de datos
            SqlDataAdapter tSqlDataAdapter = new SqlDataAdapter(sQuery, CLS_Funciones.CST_CONNECTION_STRING);
            // SqlCommandBuilder <= es una clase que nos sirve para establecer los cambios realizados
            SqlCommandBuilder tCommandBuilder = new SqlCommandBuilder(tSqlDataAdapter);
            // Esto es una tabla de base de datos pero en memoria, o sea, virtual
            DataTable tTabla = new DataTable();
            // Con el metodo Fill lleno la tabla con el resultado obtenido de la base de datos
            tSqlDataAdapter.Fill(tTabla);
            // Muestro los datos en el DataGridView
            DGV_Alquiler.DataSource = tTabla;
        }
    }
Saludos.