Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - Combobox Multicolonna
Forum - C# / VB.NET - Combobox Multicolonna

Avatar
alby75 (Normal User)
Newbie


Messaggi: 2
Iscritto: 06/03/2018

Segnala al moderatore
Postato alle 12:04
Martedì, 06/03/2018
Salve a tutti,
sono nuovo del forum e quindi mi scuso se sbaglierò qualcosa...aiutatemi a migliorare!!!
Non riesco a creare una combo box multicolonna.
Esempio classico è quello di un elenco di nomi nel quale vengono visualizzati nome, cognome e mail.
E' possibile creare una combo box che mi consenta di visualizzare i 3 dati in 3 colonne differenti?
Ho cercato in giro per il web nei vari forum/community ma ho trovato solo cose datate e con le quali non sono riuscito ad ottenere nessun risultato.

Confido nel vostro prezioso aiuto!!!

Alberto

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 5714
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 15:33
Martedì, 06/03/2018
Dovresti implementare tu il nuovo oggetto, non vale la pena.

Usa una ListView

(o una griglia)


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti (uno dei padri fondatori del moderno Calcolo delle probabilità) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote
Avatar
Thejuster (Member)
Guru^2


Messaggi: 1894
Iscritto: 04/05/2008

Segnala al moderatore
Postato alle 16:05
Martedì, 06/03/2018
Come dice nessuno devi implementare un nuovo controllo Combobox.
Non ci vuole molto a farlo.

Ma essendo che ti sei appena registrato  e non ti sei nemmeno presentato,
Ti posso aiutare ma devi mostrarmi almeno cosa hai fatto fino ad ora.

Altrimenti mi sà tanto di chiedere al panifico un panino gratis.
E non è cosa che facciamo qui.

Mostra i tuoi tentativi di realizzare questo controllo e ti dò sicuramente una mano
a completarlo.






PM Quote
Avatar
alby75 (Normal User)
Newbie


Messaggi: 2
Iscritto: 06/03/2018

Segnala al moderatore
Postato alle 16:54
Martedì, 06/03/2018
Scusami Thejuster se non mi sono presentato ma sinceramente non pensavo fosse necessario farlo e oltrettutto non saprei come fare per farlo.
Oggi sono riuscito a fare quello che volevo fare e ti spiego come ho fatto sperando che possa essere d'aiuto a qualcuno che ha il mio stesso problema ....poi se vuoi dirmi se ho fatto la cosa giusta o se posso migliorarla sarò ben lieto di seguire le tue indicazioni.

Girando nei vari forum sono arrivato a scaricarmi il file MTGCCombobox.dll che in pratica implementa il nuovo oggetto come aveva detto "nessuno".
Ho aggiunto il riferimento al mio progetto e poi con il seguente codice sono arrivato ad avere una combobox multicolonna.
Questo il codice:
Codice sorgente - presumibilmente VB.NET

  1. Public Class Form2
  2.     Public comboContinent As New MTGCComboBox
  3.  
  4.     Private Sub Form2_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  5.         comboContinent.BorderStyle = MTGCComboBox.TipiBordi.FlatXP
  6.         comboContinent.LoadingType = MTGCComboBox.CaricamentoCombo.ComboBoxItem
  7.         comboContinent.ColumnNum = 3
  8.         comboContinent.ColumnWidth = "80;120;100"
  9.         comboContinent.Items.Add(New MTGCComboBoxItem("Africa", "30,065,000 sq km", "807,419,000"))
  10.         comboContinent.Items.Add(New MTGCComboBoxItem("America", "42,293,000 sq km", "830,722,000"))
  11.         comboContinent.Items.Add(New MTGCComboBoxItem("Asia", "44,579,000 sq km", "3,701,000,000"))
  12.         comboContinent.Items.Add(New MTGCComboBoxItem("Europe", "9,938,000 sq km", "730,916,000 "))
  13.         comboContinent.Items.Add(New MTGCComboBoxItem("Oceania", "8,112,000 sq km", "31,090,000"))
  14.  
  15.         comboContinent.Location = New Point(100, 12)
  16.         Me.Controls.Add(comboContinent)
  17.  
  18.     End Sub
  19.  
  20. End Class



La valorizzazione degli Items può essere può essere fatta in vari modi...questa è stata fatta brutalmente per avere un risultato immediato senza andare a pescare dati da tabelle SQL o da DATASET.

Ora che ho risolto il problema andrò a leggermi passo passo il codice che implementa questo nuovo oggetto.


Ultima modifica effettuata da alby75 il 06/03/2018 alle 16:58
PM Quote
Avatar
Thejuster (Member)
Guru^2


Messaggi: 1894
Iscritto: 04/05/2008

Segnala al moderatore
Postato alle 20:28
Martedì, 06/03/2018
interessante come sistema.
Se hai risolto credo che sia la migliore soluzione per te.

Altrimenti se hai bisogno di personalizzare ulteriormente dovrai scriverlo da zero.
non è complicato, bisogna solo praticare sul disegno dei componenti.

Ma trovando un componente già scritto che faccia al tuo caso allora sei apposto.
ed'è fatto anche molto bene.
Ottima scelta.


PM Quote