* IFrame:增加RemovePage接口

This commit is contained in:
Sunny 2021-05-09 11:31:19 +08:00
parent ae2587b4e6
commit 2897fbc2b3
8 changed files with 54 additions and 1 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -319,6 +319,40 @@ namespace Sunny.UI
}
}
}
public bool RemovePage(int pageIndex)
{
if (pageIndex < 0) return false;
foreach (var item in PageItems)
{
if (item.Value.PageIndex == pageIndex && item.Key != null)
{
TabPage tabPage = item.Key;
tabControl.RemoveTabPage(tabPage.TabIndex);
PageItems.TryRemove(item.Key, out _);
return true;
}
}
return false;
}
public bool RemovePage(Guid guid)
{
if (guid == Guid.Empty) return false;
foreach (var item in PageItems)
{
if (item.Value.PageGuid == guid && item.Key != null)
{
TabPage tabPage = item.Key;
tabControl.RemoveTabPage(tabPage.TabIndex);
PageItems.TryRemove(item.Key, out _);
return true;
}
}
return false;
}
}
public class NavMenuItem

View File

@ -110,6 +110,10 @@ namespace Sunny.UI
public void AddPage(UIPage page) => Helper.AddPage(page);
public bool RemovePage(int pageIndex) => Helper.RemovePage(pageIndex);
public bool RemovePage(Guid guid) => Helper.RemovePage(guid);
public void AddPages(params UIPage[] pages)
{
foreach (var page in pages) AddPage(page);

View File

@ -615,5 +615,9 @@ namespace Sunny.UI
void SelectPage(int pageIndex);
bool TopMost { get; set; }
bool RemovePage(int pageIndex);
bool RemovePage(Guid guid);
}
}

View File

@ -114,7 +114,7 @@ namespace Sunny.UI
public UIPage AddPage(UIPage page, Guid guid)
{
page.PageGuid = guid;
return AddPage(page); ;
return AddPage(page);
}
public UIPage AddPage(UIPage page)
@ -128,6 +128,17 @@ namespace Sunny.UI
{
MainTabControl.SelectPage(pageIndex);
}
public bool RemovePage(int pageIndex)
{
return MainTabControl.RemovePage(pageIndex);
}
public bool RemovePage(Guid guid)
{
return MainTabControl.RemovePage(guid);
}
#endregion IFrame实现
}
}