[英]Searching for a tabpage in the tabcontrol C#
我的应用程序中有一个tabcontrol。 我有一个列表框,其中包含错误行号和文件名以及文件路径。双击我想添加新标签页。标签页的标题应该是列表框中文件的名称。 如果具有特定文件名的tabpage已经存在,那么它不应该打开新的tabpage,光标应该指向该页面。 如何检索tabpages的名称。
private void lstErrorList_MouseDoubleClick(object sender, MouseEventArgs e)
{
ArrayList errorType = new ArrayList();
if (lstErrorList.Items.Count > 0)
{
string error = lstErrorList.SelectedItem.ToString();
{
int result = error.LastIndexOf('\\');
string filename = error.Substring(result + 1, error.Length - (result + 1));
int pagecount;
TabPage tp = new TabPage();
pagecount = this.tabControl1.TabPages.Count;
for(int tbpagecount=0;tbpagecount<pagecount;tbpagecount++)
{
pagelist.Add(this.tabControl1.TabPages.ToString());
}
if (pagelist.Contains(filename))
{
}
else
{
this.tabControl1.TabPages.Insert(pagecount, filename);
pagecount++;
}
if (fileNamesList.Count == 0)
fileNamesList.Add(filename);
else
{
if (fileNamesList.Contains(filename))
{
//fileNamesList.Add("");
}
else
{
fileNamesList.Add(filename);
}
}
}
bool found = false;
foreach (TabPage tab in tabControl1.TabPages) {
if (filename.Equals(tab.Name)) {
tabControl1.SelectedTab = tab;
found = true;
}
}
if( ! found)
tabControl1.TabPages.Add(filename,filename);
var tabPage = tabControl1.TabPages[filename];
if (tabPage != null)
{
tabControl1.SelectedTab = tabPage;
}
else
{
tabControl1.TabPages.Add(filename, filename);
}
这样的事情怎么样?
string fileName = "";
bool isPresent = false;
for (int i = 0; i < tabControl1.TabPages.Count; i++)
{
if (tabControl1.TabPages[i].Name == filename)
{
isPresent = true;
break;
}
}
if (isPresent)
{
tabControl1.TabPages.Add(filename);
}
else
{
tabControl1.SelectTab(tab.TabIndex);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.