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

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; uiRadioButtonGroup1.SelectedIndex = 2;
} }
public override void Init()
{
base.Init();
uiRadioButtonGroup1.SelectedIndex = 1;
}
private void uiRadioButtonGroup1_ValueChanged(object sender, int index, string text) private void uiRadioButtonGroup1_ValueChanged(object sender, int index, string text)
{ {
Console.WriteLine("SelectedIndex: " + index + ", SelectedText: " + text); Console.WriteLine("SelectedIndex: " + index + ", SelectedText: " + text);

View File

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

View File

@ -33,11 +33,7 @@ namespace Sunny.UI
get get
{ {
if (node == null) return null; if (node == null) return null;
return Items.ContainsKey(node) ? Items[node] : null;
if (Items.ContainsKey(node))
return Items[node];
else
return null;
} }
} }
@ -141,6 +137,19 @@ namespace Sunny.UI
node.SelectedImageIndex = item.SelectedImageIndex; node.SelectedImageIndex = item.SelectedImageIndex;
node.Tag = item; 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 public class UITabControlHelper

View File

@ -19,6 +19,8 @@
* 2020-05-05: V2.2.5 (Aside-Main) * 2020-05-05: V2.2.5 (Aside-Main)
******************************************************************************/ ******************************************************************************/
using System.Windows.Forms;
namespace Sunny.UI namespace Sunny.UI
{ {
public partial class UIAsideMainFrame : UIMainFrame public partial class UIAsideMainFrame : UIMainFrame
@ -32,5 +34,12 @@ namespace Sunny.UI
MainTabControl.BringToFront(); MainTabControl.BringToFront();
Aside.TabControl = MainTabControl; 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) * 2020-05-05: V2.2.5 (Header-Aside-Main)
******************************************************************************/ ******************************************************************************/
using System.Windows.Forms;
namespace Sunny.UI namespace Sunny.UI
{ {
public partial class UIHeaderAsideMainFrame : UIHeaderMainFrame public partial class UIHeaderAsideMainFrame : UIHeaderMainFrame
@ -34,5 +36,12 @@ namespace Sunny.UI
MainTabControl.BringToFront(); MainTabControl.BringToFront();
Aside.TabControl = MainTabControl; 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; return page;
} }
public void SelectPage(int pageIndex) public virtual void SelectPage(int pageIndex)
{ {
MainContainer.SelectPage(pageIndex); MainContainer.SelectPage(pageIndex);
} }