Un breve análisis de VB.NET para realizar la visualización plegable de la lista desplegable
Hay mucho que vale la pena aprender. Aquí presentamos principalmente la implementación de listas desplegables, incluida la introducción de mejoras en los controles.
.NET es una herramienta proporcionada por Microsoft para resolver necesidades informáticas futuras. Se proporcionan muchos controles en .NET Framework, que pueden resolver el diseño y la implementación de interfaces de usuario en la programación. Sin embargo, en aplicaciones reales, es posible que sea necesario mejorar los controles proporcionados por el sistema. Por ejemplo, las listas desplegables no se pueden mejorar. mostrado en líneas dobladas. Este artículo presentará cómo implementar la lista desplegable para mostrar filas.
Diseñe una lista desplegable que pueda ajustar líneas automáticamente
Implemente la lista desplegable. Cada elemento ocupa una línea en el control ComboBox si la longitud del contenido de un elemento seleccionado. excede el ancho de la lista desplegable, excederá el ancho de la lista desplegable. Parte de ella no se muestra, lo que puede hacer que el usuario vea contenido incompleto y no pueda seleccionarlo. Hemos mejorado este control cuando una línea muestra elementos incompletos, se mostrará en una línea para evitar que los usuarios confundan los elementos envueltos con dos opciones, distinguimos diferentes opciones con colores espaciados entre sí.
El código de la clase es el siguiente:
1.Clase pública myComboBox
2.Hereda System.Windows.Forms.ComboBox
3.
4 .#Región "Código generado por Windows Forms Designer"
5.
6.#Región final
7.'El siguiente código utiliza diferentes colores Opciones de visualización
8.Private Sub myComboBox_DrawItem(ByVal remitente como objeto,
ByVal e As _ System.Windows.Forms.DrawItemEventArgs) Maneja MyBase.DrawItem
9.Si e.Index
0, entonces salga de Sub
10.Dim txtColor como SolidBrush
11.Dim bgColor como SolidBrush
12.Atenuar txtfnt como fuente
13.txtColor = Nuevo SolidBrush(Color.Black)
14.Si e.Index / 2 = CInt(e.Index / 2) Entonces
15.bgColor = Nuevo SolidBrush(Color.White)
16.Else
17.bgColor = Nuevo SolidBrush(Color.LightYellow)
18.End If
19.If e.State y DrawItemState.Selected Then
20.txtColor = Nuevo SolidBrush(Color.Blue)
21 .End If
22.e.Graphics.FillRectangle(bgColor, e.Bounds)
23.e.Graphics.DrawRectangle(Pens.Black, e.Bounds) p >
24.Dim r como nuevo rectánguloF(e.Bounds.X, e.Bounds.Y, e.Bounds.Width, e.Bounds.Height)
25.e.Gráficos. DrawString (Items(e.Index).ToString, Me.Font, txtColor, r)
26.End Sub
27.'El siguiente código calcula el tamaño requerido para cada fila de opciones
p>28.Private Sub myComboBox_MeasureItem(ByVal remitente como objeto,
ByVal e As _ System.Windows.Forms.MeasureItemEventArgs) maneja MyBase.MeasureItem
29.Dim lsize As SizeF
30.lsize = e.Graphics.MeasureString(Items(e.Index).ToString, Me.Font, New
SizeF(Me.Width, 200))
31.e.ItemHeight = lsize.Height
32.e.ItemWidth = lsize.Width
33. End Sub
34.End Class
La introducción anterior permite que la lista desplegable se muestre en filas.