2016-09-05 4 views
2

J'ai une interface avec la zone de texte qui a une liste de commandes, et je veux montrer cette liste lorsque l'utilisateur passe la souris sur la zone de texte.Comment obtenir un message sur la zone de texte

Je peux mettre un message avec l'étiquette, mais il semble qu'il est pas la meilleure façon, semble ne pas vraiment bon

Voici comment je veux l'obtenir et et même avec des étiquettes:

enter image description here

Peut-être que vous pouvez me conseiller une meilleure façon de le montrer, aussi très intéressant

+7

Vous pouvez utiliser une [info-bulle] (https://msdn.microsoft.com/en-us/library/he23h308 (v = vs.110) .aspx). –

+0

@Reza Aghaei donc c'est la réponse je suppose –

+0

Oui c'est la réponse :) –

Répondre

1

Comme déjà dit Reza Aghaei d'utiliser un ToolTip. Voici comment vous pouvez le faire:

Création et retour la liste:

static List<string> PopulateList() 
{ 
    List<string> mylist = new List<string>(); 
    mylist.Add("insert (a1) to get this"); 
    mylist.Add("insert (a2) to get this"); 
    mylist.Add("insert (a3) to get this"); 
    mylist.Add("insert (a4) to get this"); 
    ... 
    ... 
    return mylist; 
} 

Afficher l'info-bulle sur l'événement Enter de la zone de texte:

private void textBox1_Enter(object sender, EventArgs e) 
{ 
    string tooltiptext = ""; 
    List<string> mylist = PopulateList(); 
    foreach (string listitem in mylist) 
    { 
     tooltiptext += listitem + "\n"; 
    } 
    ToolTip tt = new ToolTip(); 
    tt.Show(tooltiptext, textBox1, 2000); 
} 

Résultat:

tooltip

+2

Habituellement, vous n'avez pas besoin de plus d'une instance de 'ToolTip'. Actuellement, vous avez créé plusieurs instances de 'ToolTip' dans l'événement de contrôle' Enter', ce qui n'est pas une bonne idée. Aussi, quand vous voulez créer une 'ToolTip' dans le code, vous ne devez pas oublier de le 'Disposer'. Vous pouvez simplement créer le 'ToolTip' au moment du design. Jetez un oeil à [Pourquoi devrais-je insérer un composant Windows.Forms non-UI du concepteur?] (Http://stackoverflow.com/questions/32800751/why-should-i-insert-a-non-ui-windows -forms-component-from-the-designer) –

+1

@RezaAghaei sûrement, je garderai ça à l'esprit :) –