si uso SelectedIndex me devuelve el indice 0 si es el primero 1 si es el segundo y eso no me sirve porque el indice se lo cargo con info de la base de datos y el indice es muy diferente.
pero bueno encontre la solucion por ahi buscando
Primero Creo una clase de nombre ComboboxItem:
Código .NET:
Ver originalusing System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace AdmClientes
{
public class ComboboxItem
{
public string Text { get; set; }
public object Value { get; set; }
public override string ToString()
{
return Text;
}
}
}
Así cargo el Combobox:
Código .NET:
Ver originalDataTable clientes = NN.ObtenerListadoClientes();
foreach (DataRow row in Clientes.Rows)
{
ComboboxItem item = new ComboboxItem();
item.Text = Convert.ToString(row["NOMBRECLIENTE"]);
if (!item.Text.Trim().Equals(string.Empty))
{
item.Value = Convert.ToString(row["codCliente"]);
cmbClientes.Items.Add(item);
}
}
cmbClientes.SelectedIndex = 0;
Asi saco la información:
Código .NET:
Ver originalprivate void btnObtieneInfo_Click(object sender, EventArgs e)
{
//cod tiene el indice de cliente y nombre es es nombre del cliente
string cod = (cmbClientes.SelectedItem as ComboboxItem).Value.ToString();
string nom = cmbClientes.Text;
MessageBox.Show(cod + " - " + nom);
}
Espero que alguien le sirva.
bye