[英]Dynamically or button click Search specific tab in tab control in c#
我为我的办公室制作了一些应用程序,并且此应用程序中的标签太多(超过50个),我想使用文本框搜索标签,如果可能的话,有人可以显示出如何动态搜索而不是单击搜索按钮
这是我尝试过的代码
private void button62_Click(object sender, EventArgs e)
{
if (secondtabcontainer.TabPages.ContainsKey.Equals("chattextbox"))
secondtabcontainer.SelectedTab = secondtabcontainer.TabPages["tabPage17"];
}
private void textBox55_TextChanged(object sender, EventArgs e)
{
string chattextbox;
chattextbox = textBox55.Text;
}
在TextChanged
事件中尝试以下操作:
private void textBox55_TextChanged(object sender, EventArgs e)
{
string sTabName = textBox55.Text;
foreach (TabPage tab in secondtabcontainer.TabPages)
{
if (sTabName.Equals(tab.Name))
{
secondtabcontainer.SelectedTab = tab;
break;
}
}
}
您应该维护一个包含“标签显示名称-标签ID”对的词典( Dictionary<string, string>
):
Dictionary<string, string> tabs = new Dictionary<string, string>();
// sample entries
tabs.Add("First Tab", "tab1");
tabs.Add("Second Tab", "tab2");
// ...
tabs.Add("chattextbox", "tab17");
然后将选项卡添加到新的ComboBox
控件上的Items
集合中。
将代码添加到SelectedValueChanged' event handler attached to the
ComboBox`的SelectedValueChanged' event handler attached to the
。
// `TabsList` is a new control that make the tabs searchable.
protected void TabsList_SelectedValueChanged(object sender, EventArgs e)
{
if (TabsList.SelectedIndex != -1)
{
var tabid = tabs[TabsList.SelectedText];
secondtabcontainer.SelectedTab = secondtabcontainer.TabPages[tablid];
}
}
这应该允许您预先输入标签的名称,并在选择后自动切换。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.