Ejemplo n.º 1
0
        private void btBuscar_Click(object sender, EventArgs e)
        {
            TratamientosCEN trataCEN = null;
            TratamientosEN trataEN = null;
            nuevoDataGrid = dataGridView1;

            if (tbID1.Text != "")
            {
                trataCEN = new TratamientosCEN();
                trataEN = new TratamientosEN();
                if (trataCEN.ReadOID(tbID1.Text) != null)
                {
                    trataEN = trataCEN.ReadOID(tbID1.Text);
                    tbNombre.Text = trataEN.Nombre;
                    tbPrecio.Text = trataEN.Precio.ToString();
                    tbID.Text = trataEN.Id;
                    tbFecha_fin.Text = trataEN.Fecha_fin;
                    tbFecha_Ini.Text = trataEN.Fecha_inicio;
                  //  tbAnimal.Text = trataEN.Animales.Nombre;  // Aqui lanza exception...
                }
                else
                {
                    MessageBox.Show("El cliente no existe");
                    tbID1.Text = "";
                }
            }  // Fin tbID1 != ""
            if (tbNombre1.Text != "")
            {
                trataCEN = new TratamientosCEN();
                IList<TratamientosEN> listaTratamientos = new List<TratamientosEN>();
                String[] listaDatos = new String[5];
                // Aquí obtengo todos los animales con el nombre que le paso por parametro.
                listaTratamientos = trataCEN.Dame_por_nombre(tbNombre1.Text.ToString());
                // Aquí controlo que no sea la lista vacia.
                if (listaTratamientos.Count != 0)
                {
                    DataTable table = new DataTable();
                    //Aquí recorro la lista de datos y inserto los datos de cada cliente recuperado de la base de datos.
                    for (int i = 0; i < listaTratamientos.Count; i++)
                    {

                        listaDatos[0] = listaTratamientos[i].Id;
                        listaDatos[1] = listaTratamientos[i].Nombre;
                        listaDatos[2] = listaTratamientos[i].Precio.ToString();
                        listaDatos[3] = listaTratamientos[i].Fecha_inicio;
                        listaDatos[4] = listaTratamientos[i].Fecha_fin;
                        //  listaDatos[5] = listaTratamientos[i].Animales.Nombre;     !!!!!!!!!!!!! problemas al insertar una clave ajena de la tabla cliente... LazyException
                        //Aquí lo que hago es añadir una nueva linea en el dataGridView cada
                        // vez que encuentro un cliente en la base de datos para poder añadirlo
                        // al dataGridView.
                        DataRow newRow = table.NewRow();
                        table.Rows.Add(newRow);
                        nuevoDataGrid.DataSource = table;
                        // dataGridView1.DataSource = table;
                        int j = 0;
                        while (j < listaDatos.Length)
                        {
                            nuevoDataGrid.Rows[i].Cells[j].Value = listaDatos[j].ToString();
                            //dataGridView1.Rows[i].Cells[j].Value = listaDatos[j].ToString();
                            j++;
                        }
                    } // Fin for
                }
                else
                {
                    MessageBox.Show("Ese nombre no existe");
                    tbNombre1.Text = "";
                }
            }// Fin if nombre ""
        }