Winforms列表显示选项?

时间:2012-01-25 15:15:37

标签: c# .net winforms

我正在构建一个连接到数据库的WinForms程序。在一个表单上,我想显示从DB恢复的元素列表。元素必须是可点击的(单选按钮是一个选项),并且必须有一个悬停选项,因为当鼠标悬停在特定项目上时,我希望某些信息显示在文本框中。

我找不到足够的ToolBox控件。有没有人有一些建议?我正在使用VS2010。

感谢。

2 个答案:

答案 0 :(得分:1)

在.net框架中没有这样的即用型控件,而您必须design/create使用Window custom controls

答案 1 :(得分: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;
}