SETAR SELECTEDVALUE - COMBOBOX

ANDRE.ADMVB 19/07/2010 14:37:51
#347742
Bom dia pessoal,

Estou usando VS 2008 (C#), Framework 3.5, Krypton Toolkit num projeto Windows Forms, e tenho o seguinte problema/dúvida:

é possível selecionar um item numa ComboBox setando a propriedade SelectedValue?
Se sim, como?

Minha Combo é carrega da seguinte forma:
            cboSexo.ComboBox.ValueMember = [Ô]Codigo[Ô];
cboSexo.ComboBox.DisplayMember = [Ô]Descricao[Ô];
cboSexo.ComboBox.DataSource = EnumTipoSexoContatoServices.Listar();
cboSexo.ComboBox.SelectedIndex = -1;


Quando preciso abrir a tela para alteração do registro, precisaria já trazer selecionado o item da Combo correspondente com o que já tenho cadastrado e guardado no meu objeto:
        private void CarregarInformacoesContato(string _codigo)
{
Contato oContato = ContatoServices.Obter(_codigo);

txtNome.Text = oContato.Nome;
txtSobrenome.Text = oContato.Sobrenome;

cboSexo.SelectedValue = oContato.TipoSexo;

cboSexo.SelectedValue = Convert.ToInt16(oContato.TipoSexo);

cboSexo.SelectedIndex = cboSexo.Items.IndexOf(Convert.ToInt16(oContato.TipoSexo));
}


Tentei de todas essas formas acima (e mais algumas outras que não me lembro) e nenhuma delas funcionou.
Nem mesmo colocando cboSexo[txt-color=#e80000].ComboBox[/txt-color].(....), como normalmente tem que se fazer ao utilizar o Krypton Toolkit.

Alguma sugestão?

Obrigado.
ASHKATCHUP 19/07/2010 19:18:19
#347791
Em vez de converter para Int, tenta converter para o EnumTipoSexoContatoServices
ANDRE.ADMVB 19/07/2010 19:24:52
#347793
ASHKATCHUP,

A propriedade oContato.TipoSexo já é um Enum do tipo, e mesmo quando seto ela da primeira forma, não funciona...

=\
ANDRE.ADMVB 20/07/2010 13:28:37
#347921
Boa tarde pessoal,

Apenas para informar à todos que consegui (caso alguém venha a ter o mesmo problema).

Como eu setava o DataSource da ComboBox, para conseguir setar o SelectedValue, precisava ser um Objeto do tipo relacionado no DataSource, exemplo:

Carregar:
            cboSexo.ValueMember = [Ô]Codigo[Ô];
cboSexo.DisplayMember = [Ô]Descricao[Ô];
cboSexo.DataSource = EnumTipoSexoContatoServices.Listar();
cboSexo.SelectedIndex = -1;


Setar:
cboSexo.SelectedValue = new Generico(Convert.ToInt16(oContato.TipoSexo)).Codigo;


Sendo que o método Listar retornava uma List<Generico>.

Tópico encerrado , respostas não são mais permitidas