* UIForm: 增加RemoveAllPages函数

This commit is contained in:
Sunny 2022-11-30 20:48:47 +08:00
parent d5e65ac1b0
commit 87a311ea6a
3 changed files with 15 additions and 0 deletions

View File

@ -446,6 +446,16 @@ namespace Sunny.UI
return null;
}
public void RemoveAllPages(bool keepMainPage = true)
{
var pages = GetPages<UIPage>();
foreach (var page in pages)
{
if (keepMainPage && page.TabPage?.Text == tabControl.MainPage) continue;
RemovePage(page.PageIndex);
}
}
public bool RemovePage(int pageIndex)
{
foreach (var item in PageItems)

View File

@ -245,6 +245,8 @@ namespace Sunny.UI
public bool RemovePage(Guid guid) => Helper.RemovePage(guid);
public void RemoveAllPages(bool keepMainPage = true) => Helper.RemoveAllPages(keepMainPage);
public UIPage GetPage(int pageIndex) => Helper.GetPage(pageIndex);
public UIPage GetPage(Guid guid) => Helper.GetPage(guid);

View File

@ -42,6 +42,7 @@
* 2022-08-25: V3.2.3 SendParamToPage
* 2022-08-25: V3.2.3 ReceiveParams
* 2022-09-11: V3.2.3 WM_HOTKEY消息
* 2022-11-30: V3.3.0 RemoveAllPages函数
******************************************************************************/
using System;
@ -2193,6 +2194,8 @@ namespace Sunny.UI
public bool RemovePage(Guid pageGuid) => MainTabControl?.RemovePage(pageGuid) ?? false;
public void RemoveAllPages(bool keepMainPage = true) => MainTabControl?.RemoveAllPages(keepMainPage);
public UIPage GetPage(int pageIndex) => SetDefaultTabControl().MainTabControl?.GetPage(pageIndex);
public UIPage GetPage(Guid pageGuid) => SetDefaultTabControl().MainTabControl?.GetPage(pageGuid);