2011-01-21 11 views
6

Estoy trabajando en portar una aplicación VB6 a .NET y uno de los elementos de UI deseados es un cuadro de lista horizontal. Parece que no puedo encontrar la manera de replicar esto en .NET.¿Cómo se hace un cuadro de lista horizontal en .NET

  1. ¿Se puede hacer esto con los winforms básicos?

  2. ¿Cómo replicaría esto?

muestra:
alt text

El código de Visual Basic 6 que replicar la imagen de arriba:

Private Sub Form_Load() 
    lst_horizontal(1).FontSize = 6 
    Dim iMaxChoices As Integer 
    iMaxChoices = 10 
    For i = 1 To iMaxChoices 
     lst_horizontal(1).AddItem (" " + CStr(i)) 
    Next i 
End Sub 

Private Sub lst_horizontal_Click(Index As Integer) 
    Dim iMaxChoices As Integer 
    iMaxChoices = 10 

    For i = 0 To iMaxChoices - 1 

     If lst_horizontal(1).Selected(i) Then 
      Debug.Print ("Item " + CStr(i + 1) + " selected") 
     End If 

    Next i 

palabras engañosas: puedo encontrar la manera de replicar esto en Silverlight/XAML, pero esta aplicación no se puede hacer de esa manera.

+1

¿Qué hay de WPF? – Matt

+0

Se puede hacer fácilmente en WPF, pero en WinForms probablemente tendrá que codificar el control usted mismo ... –

Respuesta

2

Esto también se admite en Winforms. Establecer la propiedad MultiColumn en True, la propiedad ColumnWidth a, por ejemplo, 15. Producción:

enter image description here

+0

+1, Nueva información para mí, gracias. – Homam

+0

¡He seguido los pasos pero no funcionó para mí! – ElektroStudios

+0

@ Hans Passant, ¿podría saber el motivo? – ElektroStudios

4

Sugeriría el ListView con para la propiedad View, podría ser una solución buena y lista para su caso.

alt text

Buena suerte!

+1

+1 buena solución –

Cuestiones relacionadas