Error: No se actualiza DBCombo SelectedItem (propiedad) al tipo de selección

IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.

Haga clic aquí para ver el artículo original (en inglés): 281940
Este artículo se ha archivado. Se ofrece "tal cual" y no se volverá a actualizar.
Síntomas
Cuando se utiliza las características de búsqueda anticipada para el tipo del control DBCombo desde DBList32.ocx, no se actualiza la propiedad SelectedItem y DBCombo no refleja la entrada coincidente que se encuentra.
Solución
Ahora tiene a su disposición una revisión para la que Microsoft proporciona soporte técnico, pero que sólo se diseñó para corregir el problema descrito en este artículo. Aplíquela sólo a equipos que experimenten este problema específico. Se efectuarán pruebas adicionales de esta revisión. Por lo tanto, si no se ve muy afectado por este problema, Microsoft recomienda que espere al próximo service pack de Visual Studio que contenga esta revisión.

Para resolver este problema inmediatamente, póngase en contacto con los Servicios de soporte técnico de Microsoft con el fin de obtener la revisión. Para obtener una lista completa de los números de teléfono de servicios de soporte de técnico de Microsoft e información acerca de los costos de soporte, visite el siguiente sitio Web: Nota : en casos especiales, los que normalmente se incurre llamadas de soporte técnico pueden cancelarse si un profesional de soporte técnico de Microsoft determina que una actualización específica resolverá el problema. Los costos habituales de soporte se aplicarán a las preguntas de soporte técnico adicionales y problemas que no guarden relación con la actualización en cuestión.

Nota : debe tener un acuerdo de licencia de Visual Studio para obtener esta revisión.

Estado
Microsoft ha confirmado que se trata de un problema de los productos de Microsoft enumerados al principio de este artículo.
Más información
Al seleccionar un elemento en la parte de un DBCombo lista control, la propiedad SelectedItem contiene un marcador que se puede utilizar para cambiar la posición del registro seleccionado en el objeto Recordset del control de datos que especifica la propiedad RowSource . Esta propiedad se debe actualizar si el usuario utiliza un mouse o el teclado para seleccionar el elemento. Por lo tanto, cuando se utiliza la característica de búsqueda anticipada para el tipo de este control, se espera que la propiedad SelectedItem se actualiza después de escribir un nombre que coincida con un nombre en la lista y presione la tecla ENTRAR. Además, el texto de DBCombo debe reflejar la entrada coincidente que se encuentra. Sin embargo, esta funcionalidad no funciona cuando utiliza el enlace de datos combinado estándar y el control de datos intrínsecos que incluye con Visual Basic 6.0.

Pasos para reproducir este comportamiento

  1. Crear nuevo proyecto EXE estándar. Se creará Form1 de manera predeterminada.
  2. En el menú proyecto , haga clic en componentes , seleccione la casilla de verificación 6.0 de controles de lista enlazado datos y, a continuación, haga clic en Aceptar .
  3. Agregue a un combinado de enlace de datos, DBCombo1, a Form1.
  4. Agregue dos controles TextBox, Text1 y Text2.
  5. Agregue un control Data, Data1.
  6. Configurar el propiedad estos controles como sigue:
    Data1 - control de datos
    DatabaseName = Biblio.mdb
    RowSource = autores
    ReadOnly = True

    texto2 - control TextBox
    DataSource = Data1
    DataField = Author
    Visible = False

    DBCombo1 - control de enlace de datos combinados
    RowSource = Data1
    ListField = Author
  7. Agregue el código siguiente a la sección General Declarations de Form1:
    Option ExplicitPrivate Const UP_ARROW = 38Private Const DOWN_ARROW = 40    Private Sub Data1_Reposition()   '   ' Copy Text from Bound Text2 to Unbound Text1.   Text1.Text = Text2.TextEnd Sub    Private Sub DBCombo1_KeyUp(KeyCode As Integer, Shift As Integer)   Dim bmk As Variant   Dim x As Integer   Dim msg As String   On Error GoTo ErrHandler   '   ' Save Bookmark on CR and Arrow Key Activity.   Select Case KeyCode      Case Asc(vbCr), UP_ARROW, DOWN_ARROW          msg = "DBCombo1.SelectedItem has the value "          bmk = DBCombo1.SelectedItem          ' The next line raises error 13 if bmk has no value.          For x = 0 To UBound(bmk)              msg = msg & bmk(x)          Next x          Data1.Recordset.Bookmark = bmk          Debug.Print msg   End Select   Exit Sub            ErrHandler:   If Err.Number = 13 Then   ' Type mismatch      Debug.Print "DBCombo1.SelectedItem is not assigned a value."   Else      MsgBox "Error " & Err.Number & ": " & Err.Description, vbCritical _         + vbOKOnly   End IfEnd SubPrivate Sub Form_Load()   Text1.Text = ""   DBCombo1.Text = ""End Sub					
  8. Ejecute el proyecto y escriba un nombre que coincide con una entrada en el control DBCombo enlazado (como Curry, Dave ).
  9. Presione ENTRAR. Observe que no se actualiza la propiedad DBCombo1.SelectedItem .
  10. Desactive el texto de DBCombo y escriba un nombre que coincida con una entrada en la lista (como Wellin, Paul ).
  11. Presione la tecla flecha arriba o flecha abajo. Observe que DBCombo1.SelectedItem se actualiza con el marcador para "Wellin, Paul".

Propiedades

Id. de artículo: 281940 - Última revisión: 02/24/2014 03:22:39 - Revisión: 3.2

Microsoft Visual Basic Enterprise Edition for Windows 6.0, Microsoft Visual Basic 6.0 Professional Edition, Microsoft Visual Basic 6.0 Edición de aprendizaje

  • kbnosurvey kbarchive kbmt kbbug kbcodesnippet kbctrl kbpending kbprb KB281940 KbMtes
Comentarios