2012-01-25 65 views
1

我正在構建一個連接到數據庫的WinForms程序。在一個表單中,我想顯示從數據庫中恢復的元素列表。元素必須是可點擊的(單選按鈕是一個選項),並且必須有一個懸停選項,因爲當鼠標懸停在特定項目上時,我希望某些信息出現在文本框中。Winforms列表顯示選項?

我找不到足夠的ToolBox控件。有沒有人有一些建議?我正在使用VS2010。

謝謝。

+0

你必須捕捉OnMouseEnter在,OnMouseHover和OnMouseExit事件來顯示和隱藏控制等http://msdn.microsoft.com/en-us/library/system.windows .forms.control.aspx – Lloyd

回答

1

在.net框架中沒有這種隨時可以使用的控件,而您必須使用Window custom controls來自行使用design/create

+0

感謝您的意見,我會研究一下 –

0

使用標準ListBox,您可以使用MouseMove事件跟蹤鼠標位置。

例子:

int _HoverIndex = -1; 

private void listBox1_MouseMove(object sender, MouseEventArgs e) { 
    int index = listBox1.IndexFromPoint(e.Location); 

    if (index != _HoverIndex) {  
    _HoverIndex = index; 

    if (_HoverIndex == -1) 
     textBox1.Text = string.Empty; 
    else 
     textBox1.Text = listBox1.Items[_HoverIndex].ToString(); 
    } 
} 

private void listBox1_MouseLeave(object sender, EventArgs e) { 
    _HoverIndex = -1; 
    textBox1.Text = string.Empty; 
}