如何管理选项卡控件中的列表框

时间:2013-05-22 22:49:31

标签: c# winforms listbox tabcontrol mousedown

这是我第一次尝试使用制表符控件构建内容。

起初我在.NET 4 C#中创建了一个小应用程序,它在其主窗口中有一个独立列表框,现在我想添加一个选项卡控件并将列表框移动到其中一个选项卡和listview into另一个标签,所以我也可以呈现图标。

我遇到的问题如下:

1)我现在将列表框动态添加到选项卡控件中,如下所示:

private ListBox listBoxMember = new ListBox();
public Form1()
{
  listBoxMember.Size = tab1.Size;
  tab1.Controls.Add(listBoxMember);
}

启动应用程序时,似乎列表框不适合整个选项卡,我可以在选项卡中看到它的边框。我怎样才能将列表框完全填入选项卡中,这样对于用户来说标签本身就像一个列表框?

2)在我改变之前,我创建了一个上下文菜单,右键单击鼠标时,该菜单通过列表框的鼠标按下事件激活。现在在选项卡中添加列表框后,单击鼠标时菜单将不会打开。我如何使用我制作的上下文菜单,并使用与列表框是独立控件时相同的方式使用它?

1 个答案:

答案 0 :(得分:1)

要使用ListBox填充选项卡,请使用“填充”属性。

listBoxMember.Dock = DockStyle.Fill;

此外,由于您现在正在动态创建ListBox,因此您还需要动态设置ContextMenu。

listBoxMember.ContextMenu = myContextMenu;

还要确保给listBoxMember一个名称,以便在tab1.Controls集合中找到它。

listBoxMember.Name = "listBoxMember";
tab1.Controls["listBoxMember"];