From 2f297a018fd2b93b9d9e1347576cbd07188adff8 Mon Sep 17 00:00:00 2001 From: Yan Maniez Date: Sun, 26 Aug 2018 23:35:08 +0200 Subject: [PATCH] Test tabbed page --- AideDeJeu/AideDeJeu/AideDeJeu.csproj | 6 ++++ AideDeJeu/AideDeJeu/App.xaml.cs | 9 ++++-- AideDeJeu/AideDeJeu/Models/PageItem.cs | 10 ++++++ .../ViewModels/DeepSearchViewModel.cs | 3 +- AideDeJeu/AideDeJeu/ViewModels/Navigator.cs | 3 ++ .../AideDeJeu/Views/ItemDetailPage.xaml.cs | 17 +++++----- AideDeJeu/AideDeJeu/Views/MainTabbedPage.xaml | 15 +++++++++ .../AideDeJeu/Views/MainTabbedPage.xaml.cs | 31 +++++++++++++++++++ 8 files changed, 82 insertions(+), 12 deletions(-) create mode 100644 AideDeJeu/AideDeJeu/Models/PageItem.cs create mode 100644 AideDeJeu/AideDeJeu/Views/MainTabbedPage.xaml create mode 100644 AideDeJeu/AideDeJeu/Views/MainTabbedPage.xaml.cs diff --git a/AideDeJeu/AideDeJeu/AideDeJeu.csproj b/AideDeJeu/AideDeJeu/AideDeJeu.csproj index f0ce4357..02e099a6 100644 --- a/AideDeJeu/AideDeJeu/AideDeJeu.csproj +++ b/AideDeJeu/AideDeJeu/AideDeJeu.csproj @@ -45,6 +45,9 @@ ItemsPage.xaml + + MainTabbedPage.xaml + @@ -338,6 +341,9 @@ MSBuild:UpdateDesignTimeXaml + + MSBuild:UpdateDesignTimeXaml + \ No newline at end of file diff --git a/AideDeJeu/AideDeJeu/App.xaml.cs b/AideDeJeu/AideDeJeu/App.xaml.cs index 1cfb7ab4..9b06662c 100644 --- a/AideDeJeu/AideDeJeu/App.xaml.cs +++ b/AideDeJeu/AideDeJeu/App.xaml.cs @@ -16,12 +16,15 @@ namespace AideDeJeu DependencyService.Register(); var vm = DependencyService.Get(); - var mainPage = new ItemDetailPage(new ItemDetailViewModel(new HomeItem()) { Title = "Haches & Dés" }); + var tabbeddPage = new AideDeJeu.Views.MainTabbedPage(); + //var mainPage = new ItemDetailPage(new ItemDetailViewModel(new HomeItem()) { Title = "Haches & Dés" }); var titlered = (Color)Resources["titlered"]; var bgtan = (Color)Resources["bgtan"]; - var navigationPage = new MainNavigationPage(mainPage) { BarBackgroundColor = titlered, BarTextColor = bgtan }; + //var navigationPage = new MainNavigationPage(mainPage) { BarBackgroundColor = titlered, BarTextColor = bgtan }; + //tabbeddPage.MainNavigationPage = navigationPage; + var navigationPage = tabbeddPage.MainNavigationPage; vm.Navigator = new Navigator(navigationPage.Navigation); - MainPage = navigationPage; + MainPage = tabbeddPage; } protected override void OnStart () diff --git a/AideDeJeu/AideDeJeu/Models/PageItem.cs b/AideDeJeu/AideDeJeu/Models/PageItem.cs new file mode 100644 index 00000000..4f077a3e --- /dev/null +++ b/AideDeJeu/AideDeJeu/Models/PageItem.cs @@ -0,0 +1,10 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace AideDeJeuLib +{ + public class PageItem : Items + { + } +} diff --git a/AideDeJeu/AideDeJeu/ViewModels/DeepSearchViewModel.cs b/AideDeJeu/AideDeJeu/ViewModels/DeepSearchViewModel.cs index f66ede94..23ed3775 100644 --- a/AideDeJeu/AideDeJeu/ViewModels/DeepSearchViewModel.cs +++ b/AideDeJeu/AideDeJeu/ViewModels/DeepSearchViewModel.cs @@ -1,4 +1,5 @@ -using AideDeJeuLib; +using AideDeJeu.Views; +using AideDeJeuLib; using System; using System.Collections.Generic; using System.Text; diff --git a/AideDeJeu/AideDeJeu/ViewModels/Navigator.cs b/AideDeJeu/AideDeJeu/ViewModels/Navigator.cs index ec7c960a..c1bcb9b0 100644 --- a/AideDeJeu/AideDeJeu/ViewModels/Navigator.cs +++ b/AideDeJeu/AideDeJeu/ViewModels/Navigator.cs @@ -76,6 +76,9 @@ namespace AideDeJeu.ViewModels var vm = new ItemDetailViewModel(item); await Navigation.PushAsync(new ItemDetailPage(vm)); } + var tabbedPage = App.Current.MainPage as MainTabbedPage; + tabbedPage.SelectedItem = null; + tabbedPage.SelectedItem = tabbedPage.MainNavigationPage; } public async Task GotoItemsPageAsync(ItemsViewModel itemsVM) diff --git a/AideDeJeu/AideDeJeu/Views/ItemDetailPage.xaml.cs b/AideDeJeu/AideDeJeu/Views/ItemDetailPage.xaml.cs index 1c77ea6c..1de27c81 100644 --- a/AideDeJeu/AideDeJeu/Views/ItemDetailPage.xaml.cs +++ b/AideDeJeu/AideDeJeu/Views/ItemDetailPage.xaml.cs @@ -35,15 +35,16 @@ namespace AideDeJeu.Views { InitializeComponent(); - var item = new Item - { - Name = "", - AltName = "", - //Description = "This is an item description." - }; + BindingContext = this.viewModel = new ItemDetailViewModel(new HomeItem()) { Title = "Haches & Dés" }; + //var item = new Item + //{ + // Name = "", + // AltName = "", + // //Description = "This is an item description." + //}; - viewModel = new ItemDetailViewModel(item); - BindingContext = viewModel; + //viewModel = new ItemDetailViewModel(item); + //BindingContext = viewModel; } void PaintHeaderBar(object sender, SKPaintSurfaceEventArgs args) diff --git a/AideDeJeu/AideDeJeu/Views/MainTabbedPage.xaml b/AideDeJeu/AideDeJeu/Views/MainTabbedPage.xaml new file mode 100644 index 00000000..f52cd2ba --- /dev/null +++ b/AideDeJeu/AideDeJeu/Views/MainTabbedPage.xaml @@ -0,0 +1,15 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/AideDeJeu/AideDeJeu/Views/MainTabbedPage.xaml.cs b/AideDeJeu/AideDeJeu/Views/MainTabbedPage.xaml.cs new file mode 100644 index 00000000..0c430fb1 --- /dev/null +++ b/AideDeJeu/AideDeJeu/Views/MainTabbedPage.xaml.cs @@ -0,0 +1,31 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +using Xamarin.Forms; +using Xamarin.Forms.Xaml; + +namespace AideDeJeu.Views +{ + [XamlCompilation(XamlCompilationOptions.Compile)] + public partial class MainTabbedPage : TabbedPage + { + public MainNavigationPage MainNavigationPage + { + get + { + return this.NavigationPage; + } + set + { + this.NavigationPage = value; + } + } + public MainTabbedPage () + { + InitializeComponent(); + } + } +} \ No newline at end of file