Hola a todos , tengo el siguiente caso que estoy trabajando en C# Winforms.
1. He creado un UserControl que tiene un combobox donde se almacena el maestro de familias de productos :
public partial class Familias : UserControl
{
private OracleConnection conexionOracle;
private SujifosBasesdeDatos sufijo;
public Familias()
{
InitializeComponent();
}
public void PoblarFamilia(OracleConnection conexionOracle, SujifosBasesdeDatos sufijo)
{
this.conexionOracle = conexionOracle;
this.sufijo = sufijo;
cbFamilias.DataSource = new SicolafNG(conexionOracle).obtenerFamilias(new FamiliasTR(), sufijo);
cbFamilias.DisplayMember = "Descripcion";
cbFamilias.ValueMember = "Codigo";
cbFamilias.Text = "";
cbFamilias.SelectedText = "";
cbFamilias.DropDownStyle = ComboBoxStyle.DropDownList;
}
}
2. En la forma donde utilizo el usercontrol necesito cambiar el SelectedIndex que tiene el combobox que esta en el usercontrol pero no he podido y tengo el siguiente código
#region poblar la familia ; Dejar seleccionada la familia que ha especificado el usuario en el Bono
indice = 0;
encontrado = false;
foreach (Control obj in familias1.Controls)
{
if (obj is ComboBox)
{
foreach(object objeto in ((ComboBox)obj).Items)
{
FamiliasTR prueba = (FamiliasTR)objeto;
if ( prueba.Codigo == bonoConsulta.Codfamilia)
{
encontrado = true;
break;
}
indice++;
}
if (encontrado)
{
//Aquí necesito adicionar la línea de código para cambiar el SelectedIndex
// pero solo tengo el siguiente dato
this.familias1.Controls. ......... = indice ; }
}
}
#endregion
Gracias a los que me puedan ayudar