combobox y dataset si carga pero no puedo seleccionar los datos

Iniciado por raul006, 17 Noviembre 2009, 19:55 PM

0 Miembros y 1 Visitante están viendo este tema.

raul006

 :huh: les dejo el codigo

Imports MySql.Data.MySqlClient
Public Class proyectos_cartera
    Dim cnGen As New MySqlConnection
    Dim Primera As Boolean = True
    Dim cnUsuario As New MySqlConnection
    Sub Conectar()

        Dim Departamento As Integer = 0
        Dim Municipio As Integer = 0
        Dim xPrimera As Boolean = True

        Dim strQry As String = ""
        Try
            If Len(StringCn) > 0 Then
                cnGen.ConnectionString = StringCn
                cnGen.Open()
            End If
        Catch ex As Exception
            MensajeError(Err.Description)
        End Try

        If cnGen.State = ConnectionState.Open Then
            Try

            Catch ex As Exception
                MensajeError(Err.Description)
            End Try
        End If

    End Sub
    Sub Consulta()
        Dim dsGen As New DataSet
        Dim daGen As New MySqlDataAdapter
        Dim strQry As String
        Try
            strQry = "SELECT id_gg, denominacion FROM grupo"
            daGen.SelectCommand = New MySqlCommand(strQry, cnGen)
            daGen.Fill(dsGen, "grupo")
            DenominacionComboBox.DataSource = dsGen.Tables("grupo")
            DenominacionComboBox.DisplayMember = ("denominacion")
            DenominacionComboBox.ValueMember = ("id_gg")

            If DenominacionComboBox.SelectedIndex >= -1 Then
                DenominacionComboBox.SelectedIndex = 0
            End If


        Catch ex As Exception
            MensajeError(Err.Description)
        End Try
    End Sub
    Private Sub Proyecto_carteraBindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Proyecto_carteraBindingNavigatorSaveItem.Click
        Me.Validate()
        Me.Proyecto_carteraBindingSource.EndEdit()
        Me.Proyecto_carteraTableAdapter.Update(Me.GestorDataSet.proyecto_cartera)

    End Sub

    Private Sub proyectos_cartera_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'TODO: esta línea de código carga datos en la tabla 'GestorDataSet.proyecto_cartera' Puede moverla o quitarla según sea necesario.
        Me.Proyecto_carteraTableAdapter.Fill(Me.GestorDataSet.proyecto_cartera)
        Conectar()
        Consulta()

    End Sub


    Private Sub ToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton1.Click
        menu_principal.Show()
        Me.Visible = False
    End Sub

    Private Sub BindingNavigatorAddNewItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BindingNavigatorAddNewItem.Click
        Id_proyectoTextEdit.Enabled = True
        DenominacionComboBox.Enabled = True
        FechaDateEdit.Enabled = True
        ActividadTextBox.Enabled = True
        ObjetivoTextBox.Enabled = True
        Resultado_esperadoTextBox.Enabled = True
        Id_proyectoTextEdit.Focus()
    End Sub

    Private Sub DenominacionComboBox_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DenominacionComboBox.SelectedIndexChanged
        If DenominacionComboBox.Enabled = True Then
            Consulta()
            Primera = True
        End If
    End Sub


End Class

raul338

Cita de: raul006 en 17 Noviembre 2009, 19:55 PM
:huh: les dejo el codigo

no entiendo el problema. Quieres obtener la opcion elegida del combobox? Prueba ponerlo con DataValue y obtenerlo con SelectedValue
No probe el codigo, simplemente lo ojeé




PD: Linda foto de itachi  :D  :xD

raul006

pues vieras q hace la consulta al dataset pero cuando quires escoger los datos solo el primero te deja escoger y no los demas  :o ayudaaaaaaaaaaaa

Hadess_inf


raul006

pues estuve leyendo ahi pero no me queda muy claro la idea de usar ddl me podrias ampliar mas la informacion gracias  ;D

Hadess_inf

Citar
Bueno, es por eso que se debe tratar de manejar los terminos adecuados (o que lleguen a alguna similitud con lo que se desea dar a entender) cuando se hace una consulta.

Tu primer error radica en que estas llenando tu DDL(1) en el load, ademas tambien es mas que seguro que tu DDL(1) tiene activada la propiedad AutoPostBack:

sub page_load()
'codigo que llena el dropdownlist
end sub

Cada vez que tu pagina carge, tu DDL(1) capturara el origen de datos y se llenara completamente, pero ademas de llenarse tambien pondra el foco en el primer elemento, para evitar eso simplemente tienes que decirle que no lo vuelca a cargar cuando la pagina hizo postBack,

sub page_load()
if not page.ispostback then
  'codigo que llena el dropdownlist
end if
end sub

Tu segundo error radica en que no puedes establecer un origen de datos con un elemento agregado previamente (por lo menos no lo he intentado, y no creo que se pueda), lo que tienes que hacer es recorrer la tabla que contiene la consulta con un FOR, e ir agregando al combo cada elemento.

Saludos.