Tengo un problema con los Label en Visual Studio 2022

R.Pintado 0 Puntos de reputación
2025-02-17T09:43:22.3133333+00:00

Creo un proyecto nuevo y le agrego unos Label. Hasta aquí todo bien. Pero cuando está en marcha, si hago click dos veces en cualquier Label, el texto de éste se copia en el Portapapeles.

'Ejemplo del Label
WithEvents NewLabel As New Label
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    NewLabel.Text = "NewLabel"
    NewLabel.AutoSize = True
    NewLabel.Location = New Point(10, 10)
    Me.Controls.Add(NewLabel)
End Sub

Subo un video en OneDrive para que se pueda comprender mejor mi problema.

Gracias.

Preguntas y respuestas (Q&A) de Microsoft
Preguntas y respuestas (Q&A) de Microsoft
Use esta etiqueta para compartir sugerencias, solicitudes de características y errores con el equipo de Microsoft Q&A. El equipo de Microsoft Q&A evaluará sus comentarios periódicamente y proporcionará actualizaciones a lo largo del proceso.
449 preguntas
0 comentarios No hay comentarios
{count} votos

3 respuestas

Ordenar por: Muy útil
  1. Gao Chen 7,175 Puntos de reputación Proveedor de Microsoft
    2025-02-17T21:46:21.5266667+00:00

    Hola Rafael Pintado,

    ¡Bienvenido(a) a Microsoft Q&A!

    En este caso para evitar que el texto del Label se copie al Portapapeles al hacer doble clic, puedes manejar el evento DoubleClick del Label y evitar que se realice la acción predeterminada. Aquí tienes un ejemplo de cómo hacerlo:

    WithEvents NewLabel As New Label
    
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        NewLabel.Text = "NewLabel"
        NewLabel.AutoSize = True
        NewLabel.Location = New Point(10, 10)
        Me.Controls.Add(NewLabel)
        AddHandler NewLabel.DoubleClick, AddressOf NewLabel_DoubleClick
    End Sub
    
    Private Sub NewLabel_DoubleClick(sender As Object, e As EventArgs)
        ' Evitar que el texto se copie al Portapapeles
        ' Puedes dejar este método vacío o agregar alguna otra lógica si lo deseas
    End Sub
    

    Con este código, al hacer doble clic en el Label, no se copiará el texto al Portapapeles. Espero que la información dada haya sido de ayuda, si necesitas más asistencia, estoy a tu disposición.

    Atentamente,

    Gao


    Si esta respuesta resolvió tu consulta, por favor haz clic en 'Aceptar respuesta'. Esto nos ayuda a mejorar continuamente la calidad y relevancia de nuestras soluciones.

    1 persona ha encontrado útil esta respuesta.

  2. R.Pintado 0 Puntos de reputación
    2025-02-18T11:02:26.3433333+00:00

    Bien. Entendido.

        Sub NewLoad() Handles Me.Load
            For Each lbs As Label In Controls.OfType(Of Label)
                AddHandler lbs.DoubleClick, AddressOf NewLabel_DoubleClick
            Next
        End Sub
        Sub NewLabel_DoubleClick()
        End Sub
    
    

    Gracias de nuevo Gao Chen

    Doy por válida tu respuesta.


  3. R.Pintado 0 Puntos de reputación
    2025-02-19T08:46:50.9+00:00

    Probando, he encontrado otra solución también temporal. Para esta solución lo único que hay que hacer es ir a las propiedades del proyecto en

    Explorador de Soluciones -> Aplicaciones -> Tipo de Aplicación

    cambiar

    Aplicación de Windows Form por Servicios de Windows

    Me ha funcionado. El problema es que se deshabilita, automáticamente, el

    Marco de trabajo de la aplicación

    Si se vuelve a cambiar sigue pasando

    0 comentarios No hay comentarios

Su respuesta

Las respuestas se pueden marcar como respuestas aceptadas por el autor de la pregunta, lo que ayuda a los usuarios a conocer la respuesta que resolvió el problema del autor.