diff --git a/src/Core_30/HandyControlDemo_Core_30/HandyControlDemo_Core30.csproj b/src/Core_30/HandyControlDemo_Core_30/HandyControlDemo_Core30.csproj
index dc1bfbd0..7705c249 100644
--- a/src/Core_30/HandyControlDemo_Core_30/HandyControlDemo_Core30.csproj
+++ b/src/Core_30/HandyControlDemo_Core_30/HandyControlDemo_Core30.csproj
@@ -463,6 +463,9 @@
Resources\Img\LeftMainContent\OutlinedRectangleTool_16x.png
+
+ Resources\Img\LeftMainContent\frame_16xLG.png
+
diff --git a/src/Net_40/HandyControlDemo_Net_40/HandyControlDemo_Net_40.csproj b/src/Net_40/HandyControlDemo_Net_40/HandyControlDemo_Net_40.csproj
index b869564e..3da0dae4 100644
--- a/src/Net_40/HandyControlDemo_Net_40/HandyControlDemo_Net_40.csproj
+++ b/src/Net_40/HandyControlDemo_Net_40/HandyControlDemo_Net_40.csproj
@@ -534,6 +534,9 @@
Resources\Img\LeftMainContent\OutlinedRectangleTool_16x.png
+
+ Resources\Img\LeftMainContent\frame_16xLG.png
+
diff --git a/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj b/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj
index f61370b1..6b365cd1 100644
--- a/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj
+++ b/src/Net_GE45/HandyControlDemo_Net_GE45/HandyControlDemo_Net_GE45.csproj
@@ -597,6 +597,9 @@
Resources\Img\LeftMainContent\OutlinedRectangleTool_16x.png
+
+ Resources\Img\LeftMainContent\frame_16xLG.png
+
diff --git a/src/Shared/HandyControlDemo_Shared/Data/DemoInfo.json b/src/Shared/HandyControlDemo_Shared/Data/DemoInfo.json
index 502dca8a..c849557e 100644
--- a/src/Shared/HandyControlDemo_Shared/Data/DemoInfo.json
+++ b/src/Shared/HandyControlDemo_Shared/Data/DemoInfo.json
@@ -30,6 +30,7 @@
[ "ToolBar", "ToolBarDemoCtl", "ToolBar_16x", "" ],
[ "Border", "BorderDemoCtl", "BorderElement_16x", "" ],
[ "Label", "LabelDemoCtl", "Label_16x", "" ],
+ [ "Frame", "FrameDemoCtl", "frame_16xLG", "1" ],
[ "Window", "NativeWindowDemoCtl", "WindowsForm_16x", "1" ]
]
},
diff --git a/src/Shared/HandyControlDemo_Shared/HandyControlDemo_Shared.projitems b/src/Shared/HandyControlDemo_Shared/HandyControlDemo_Shared.projitems
index ff0bb8c3..ff7903f6 100644
--- a/src/Shared/HandyControlDemo_Shared/HandyControlDemo_Shared.projitems
+++ b/src/Shared/HandyControlDemo_Shared/HandyControlDemo_Shared.projitems
@@ -296,6 +296,9 @@
FlowDocumentDemoCtl.xaml
+
+ FrameDemoCtl.xaml
+
GroupBoxDemoCtl.xaml
@@ -819,6 +822,10 @@
Designer
MSBuild:Compile
+
+ Designer
+ MSBuild:Compile
+
Designer
MSBuild:Compile
diff --git a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.Designer.cs b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.Designer.cs
index 15583b8b..2354a8cc 100644
--- a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.Designer.cs
+++ b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.Designer.cs
@@ -663,6 +663,15 @@ namespace HandyControlDemo.Properties.Langs {
}
}
+ ///
+ /// 查找类似 导航框架 的本地化字符串。
+ ///
+ public static string Frame {
+ get {
+ return ResourceManager.GetString("Frame", resourceCulture);
+ }
+ }
+
///
/// 查找类似 Gif图片 的本地化字符串。
///
diff --git a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.en.resx b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.en.resx
index f4307dc9..bd530288 100644
--- a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.en.resx
+++ b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.en.resx
@@ -735,4 +735,7 @@
Open navigation window
+
+ Frame
+
\ No newline at end of file
diff --git a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.fa.resx b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.fa.resx
index ab65e3c9..1fbed098 100644
--- a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.fa.resx
+++ b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.fa.resx
@@ -735,4 +735,7 @@
Open navigation window
+
+ Frame
+
\ No newline at end of file
diff --git a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.fr.resx b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.fr.resx
index a1b8af8f..bdec38d6 100644
--- a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.fr.resx
+++ b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.fr.resx
@@ -735,4 +735,7 @@
Open navigation window
+
+ Frame
+
\ No newline at end of file
diff --git a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.ko-KR.resx b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.ko-KR.resx
index ae3c9a1b..42566978 100644
--- a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.ko-KR.resx
+++ b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.ko-KR.resx
@@ -735,4 +735,7 @@
Open navigation window
+
+ Frame
+
\ No newline at end of file
diff --git a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.resx b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.resx
index ad5c9e11..0474931a 100644
--- a/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.resx
+++ b/src/Shared/HandyControlDemo_Shared/Properties/Langs/Lang.resx
@@ -735,4 +735,7 @@
点击打开导航窗口
+
+ 导航框架
+
\ No newline at end of file
diff --git a/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/frame_16xLG.png b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/frame_16xLG.png
new file mode 100644
index 00000000..52248f5b
Binary files /dev/null and b/src/Shared/HandyControlDemo_Shared/Resources/Img/LeftMainContent/frame_16xLG.png differ
diff --git a/src/Shared/HandyControlDemo_Shared/UserControl/Styles/FrameDemoCtl.xaml b/src/Shared/HandyControlDemo_Shared/UserControl/Styles/FrameDemoCtl.xaml
new file mode 100644
index 00000000..0f32caf5
--- /dev/null
+++ b/src/Shared/HandyControlDemo_Shared/UserControl/Styles/FrameDemoCtl.xaml
@@ -0,0 +1,9 @@
+
+
+
+
+
diff --git a/src/Shared/HandyControlDemo_Shared/UserControl/Styles/FrameDemoCtl.xaml.cs b/src/Shared/HandyControlDemo_Shared/UserControl/Styles/FrameDemoCtl.xaml.cs
new file mode 100644
index 00000000..517cd71e
--- /dev/null
+++ b/src/Shared/HandyControlDemo_Shared/UserControl/Styles/FrameDemoCtl.xaml.cs
@@ -0,0 +1,57 @@
+using System.Collections.Generic;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Controls.Primitives;
+using HandyControl.Tools.Extension;
+
+namespace HandyControlDemo.UserControl
+{
+ public partial class FrameDemoCtl
+ {
+
+ private readonly List _pageList;
+
+ public FrameDemoCtl()
+ {
+ InitializeComponent();
+
+ AddHandler(ButtonBase.ClickEvent, new RoutedEventHandler(Button_Click));
+
+ _pageList = new List();
+ for (var i = 0; i < 5; i++)
+ {
+ _pageList.Add(CreatePage(i));
+ }
+
+ FrameDemo.Navigate(_pageList[0]);
+ }
+
+ private Page CreatePage(int index)
+ {
+ var indexStr = index.ToString();
+ var button = new Button
+ {
+ HorizontalAlignment = HorizontalAlignment.Center,
+ VerticalAlignment = VerticalAlignment.Center,
+ Content = indexStr,
+ Width = 320,
+ Tag = indexStr
+ };
+
+ return new Page
+ {
+ Title = indexStr,
+ Content = button
+ };
+ }
+
+ private void Button_Click(object sender, RoutedEventArgs e)
+ {
+ if (e.OriginalSource is Button button && button.Tag is string tag)
+ {
+ var index = tag.Value() + 1;
+ FrameDemo.Navigate(index >= _pageList.Count ? _pageList[0] : _pageList[index]);
+ }
+ }
+ }
+}
diff --git a/src/Shared/HandyControl_Shared/HandyControl_Shared.projitems b/src/Shared/HandyControl_Shared/HandyControl_Shared.projitems
index f2484dc6..161616dc 100644
--- a/src/Shared/HandyControl_Shared/HandyControl_Shared.projitems
+++ b/src/Shared/HandyControl_Shared/HandyControl_Shared.projitems
@@ -398,6 +398,14 @@
Designer
MSBuild:Compile
+
+ Designer
+ MSBuild:Compile
+
+
+ Designer
+ MSBuild:Compile
+
Designer
MSBuild:Compile
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Base/FrameBaseStyle.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Base/FrameBaseStyle.xaml
new file mode 100644
index 00000000..9305788b
--- /dev/null
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Base/FrameBaseStyle.xaml
@@ -0,0 +1,67 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Frame.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Frame.xaml
new file mode 100644
index 00000000..7a75a2e7
--- /dev/null
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Frame.xaml
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Style.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Style.xaml
index 90020457..6b0c7b0d 100644
--- a/src/Shared/HandyControl_Shared/Themes/Styles/Style.xaml
+++ b/src/Shared/HandyControl_Shared/Themes/Styles/Style.xaml
@@ -83,6 +83,7 @@
+
\ No newline at end of file