* 页面框架增加页面内跳转方法优化

This commit is contained in:
Sunny 2020-11-10 21:14:48 +08:00
parent d732079aed
commit e2f5c4d2df
8 changed files with 44 additions and 6 deletions

Binary file not shown.

Binary file not shown.

View File

@ -10,6 +10,12 @@ namespace Sunny.UI.Demo
uiRadioButtonGroup1.SelectedIndex = 2;
}
public override void Init()
{
base.Init();
uiRadioButtonGroup1.SelectedIndex = 1;
}
private void uiRadioButtonGroup1_ValueChanged(object sender, int index, string text)
{
Console.WriteLine("SelectedIndex: " + index + ", SelectedText: " + text);

View File

@ -651,6 +651,11 @@ namespace Sunny.UI
MenuItemClick?.Invoke(SelectedNode, MenuHelper[SelectedNode], MenuHelper.GetPageIndex(SelectedNode));
}
public TreeNode GetTreeNode(int pageIndex)
{
return MenuHelper.GetTreeNode(pageIndex);
}
protected override void OnMouseWheel(MouseEventArgs e)
{
base.OnMouseWheel(e);

View File

@ -33,11 +33,7 @@ namespace Sunny.UI
get
{
if (node == null) return null;
if (Items.ContainsKey(node))
return Items[node];
else
return null;
return Items.ContainsKey(node) ? Items[node] : null;
}
}
@ -141,6 +137,19 @@ namespace Sunny.UI
node.SelectedImageIndex = item.SelectedImageIndex;
node.Tag = item;
}
public TreeNode GetTreeNode(int pageIndex)
{
foreach (var pair in Items)
{
if (pair.Value.PageIndex == pageIndex)
{
return pair.Key;
}
}
return null;
}
}
public class UITabControlHelper

View File

@ -19,6 +19,8 @@
* 2020-05-05: V2.2.5 (Aside-Main)
******************************************************************************/
using System.Windows.Forms;
namespace Sunny.UI
{
public partial class UIAsideMainFrame : UIMainFrame
@ -32,5 +34,12 @@ namespace Sunny.UI
MainTabControl.BringToFront();
Aside.TabControl = MainTabControl;
}
public override void SelectPage(int pageIndex)
{
base.SelectPage(pageIndex);
TreeNode node = Aside.GetTreeNode(pageIndex);
if (node != null) Aside.SelectedNode = node;
}
}
}

View File

@ -19,6 +19,8 @@
* 2020-05-05: V2.2.5 (Header-Aside-Main)
******************************************************************************/
using System.Windows.Forms;
namespace Sunny.UI
{
public partial class UIHeaderAsideMainFrame : UIHeaderMainFrame
@ -34,5 +36,12 @@ namespace Sunny.UI
MainTabControl.BringToFront();
Aside.TabControl = MainTabControl;
}
public override void SelectPage(int pageIndex)
{
base.SelectPage(pageIndex);
TreeNode node = Aside.GetTreeNode(pageIndex);
if (node != null) Aside.SelectedNode = node;
}
}
}

View File

@ -65,7 +65,7 @@ namespace Sunny.UI
return page;
}
public void SelectPage(int pageIndex)
public virtual void SelectPage(int pageIndex)
{
MainContainer.SelectPage(pageIndex);
}