Bueno gente tengo este codigo en C# que espero que se interprete bien, estoy trabajando en windows form
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
}
}}