Lo que quiero que aga por ejemplo:
En el comboBox me aparecen maquinarias (que mando llamar de una BD) como
MO-01
MO-02
MO-03
RE-12
RE-14
Etc.
Ahora si yo elijo la MO-01 quiero que en el textBox1 apareza el ultimo horometro (horas trabajadas) de la maquina seleccionada, se como hacer la consulta en sql pero no como para mandarlo a un textBox, lo necesito sin que tenga un boton, solamente con seleccionar uno que me aparezcan sus horas en textBox1.
alguien que me ayude? aqui el codigo:
Código:
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.OleDb; namespace Sanborns { public partial class Form4 : Form { public Form4() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { Form1 trick = new Form1(); this.Hide(); trick.Show(); } private void Form2_Load(object sender, EventArgs e) { llenacombobox(); ///con este mando a llamar a todas las maquinas que existan llenacombobox2();///con este mando a llamar todas las areas que existan } private void capturaDeServiciosToolStripMenuItem_Click(object sender, EventArgs e) { Form3 servicios = new Form3(); this.Hide(); servicios.Show(); } public void llenacombobox() { OleDbConnection conexion = new OleDbConnection(); conexion.ConnectionString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\ruta"; DataSet ds = new DataSet(); OleDbDataAdapter da = new OleDbDataAdapter("SELECT maquina FROM Maquinaria", conexion); da.Fill(ds, "Maquinaria"); comboBox1.DataSource = ds.Tables[0].DefaultView; comboBox1.ValueMember = "maquina"; } private void llenacombobox2() { OleDbConnection conexion = new OleDbConnection(); conexion.ConnectionString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\ruta"; DataSet ds = new DataSet(); OleDbDataAdapter da = new OleDbDataAdapter("SELECT ubicacion FROM Ubicacion", conexion); da.Fill(ds, "Ubicacion"); comboBox2.DataSource = ds.Tables[0].DefaultView; comboBox2.ValueMember = "ubicacion"; } private void button1_Click_1(object sender, EventArgs e) ///todo esto es para ingresar una nueva maquina con un nuevo horometro { OleDbConnection conexion; OleDbCommand comando; conexion = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\ruta"); string consulta = "INSERT INTO Servicios (maquinaria,ubicacion,horometro,comentarios) VALUES (@MAQ, @UBI, @HORO, @COMENT)"; comando = new OleDbCommand(consulta, conexion); comando.Parameters.Add(new OleDbParameter("@MAQ", OleDbType.VarWChar)); comando.Parameters["@MAQ"].Value = comboBox1.Text; comando.Parameters.Add(new OleDbParameter("@UBI", OleDbType.VarWChar)); comando.Parameters["@UBI"].Value = comboBox2.Text; comando.Parameters.Add(new OleDbParameter("@HORO", OleDbType.Numeric)); comando.Parameters["@HORO"].Value = textBox1.Text; comando.Parameters.Add(new OleDbParameter("@COMENT", OleDbType.VarWChar)); comando.Parameters["@COMENT"].Value = richTextBox1.Text; if (comboBox1.Text == "") { MessageBox.Show("El campo Maquina no puede quedar vacio"); comboBox1.Focus(); } else if (comboBox2.Text == "") { MessageBox.Show("El campo Ubicacion no puede quedar vacio"); comboBox2.Focus(); } else if (textBox1.Text == "") { MessageBox.Show("El campo Horometro no puede quedar vacio"); textBox1.Focus(); } else { comando.Connection.Open(); comando.ExecuteNonQuery(); comando.Connection.Close(); label5.Text = "Se ha agregado un nuevo dato al sistema"; } } private void button2_Click(object sender, EventArgs e) { textBox1.Clear(); richTextBox1.Clear(); textBox1.Focus(); } private void textBox2_TextChanged_1(object sender, EventArgs e) { ///este es el textBox } }}