2016-09-05 4 views
2

У меня есть интерфейс с текстовым полем, в котором есть список команд, и я хочу показать этот список, когда пользователь наводит указатель мыши на текстовое поле.Как получить сообщение через текстовое поле

я могу поместить сообщение с номером, но, кажется, это не самый лучший способ, выглядит не очень хорошо

Вот как я хочу получить его и и же с этикетками:

enter image description here

Может быть, вы можете посоветовать мне лучший способ показать это, также очень интересно

+7

Вы можете использовать [ToolTip] (https://msdn.microsoft.com/en-us/library/he23h308 (v = vs.110) .aspx). –

+0

@Reza Aghaei, так что это ответ, я думаю –

+0

Да, это ответ :) –

ответ

1

Как Reza Aghaei уже говорил использовать ToolTip. Вот как вы можете это сделать:

Создание и возвращение списка:

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; 
} 

Отображение всплывающей подсказке на Enter случае TextBox:

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); 
} 

Результат:

tooltip

+2

Обычно вам не нужно больше одного экземпляра «ToolTip». В настоящее время вы создали несколько экземпляров «ToolTip» в событии управления «Enter», что не очень хорошо. Также, когда вы хотите создать «ToolTip» в коде, вы не должны забывать «Dispose». Вы можете просто создать «ToolTip» во время разработки. Взгляните на [Почему я должен вставить компонент конструктора без интерфейса пользователя Windows.Forms?] (Http://stackoverflow.com/questions/32800751/why-should-i-insert-a-non-ui-windows -forms-component-from-the-designer) –

+1

@RezaAghaei, конечно, я буду помнить об этом :) –

Смежные вопросы