Archived
Initial commit
This commit is contained in:
commit
c866bd7b5e
60 files changed
+21902
No files matched your search
@@ -0,0 +1,74 @@
|
||||
using Xamarin.Forms;
|
||||
|
||||
namespace MobileApp1.Views
|
||||
{
|
||||
public class ContentPageHelper
|
||||
{
|
||||
|
||||
public static App GetApp(ContentPage view)
|
||||
{
|
||||
if (view == null) return null;
|
||||
|
||||
Element item = view.Parent;
|
||||
|
||||
while (true)
|
||||
{
|
||||
if (item == null) break;
|
||||
if (item is App) break;
|
||||
|
||||
item = item.Parent;
|
||||
}
|
||||
|
||||
return (item as App);
|
||||
}
|
||||
|
||||
public static Application GetApplication(ContentPage view)
|
||||
{
|
||||
if (view == null) return null;
|
||||
|
||||
Element item = view.Parent;
|
||||
|
||||
while (true)
|
||||
{
|
||||
if (item == null) break;
|
||||
if (item is Application) break;
|
||||
|
||||
item = item.Parent;
|
||||
}
|
||||
|
||||
return (item as Application);
|
||||
}
|
||||
|
||||
public static void SetMainPage(ContentPage view, Page page)
|
||||
{
|
||||
if (view == null) return;
|
||||
if (view.Parent == null) return;
|
||||
if (page == null) return;
|
||||
|
||||
Application rs = GetApplication(view);
|
||||
if (rs == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
//rs.MainPage = new NavigationPage(new PasswordResetPage());
|
||||
rs.MainPage = page;
|
||||
}
|
||||
|
||||
public static async void PushMainPageNavigation(ContentPage view, Page page)
|
||||
{
|
||||
if (view == null) return;
|
||||
if (view.Parent == null) return;
|
||||
if (page == null) return;
|
||||
|
||||
Application rs = GetApplication(view);
|
||||
if (rs == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
await rs?.MainPage.Navigation.PushAsync(page);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,119 @@
|
||||
using System;
|
||||
using Xamarin.Forms;
|
||||
|
||||
namespace MobileApp1.Views
|
||||
{
|
||||
public class ContentViewHelper
|
||||
{
|
||||
|
||||
public static ContentPage GetContentPage(ContentView view)
|
||||
{
|
||||
if (view == null) return null;
|
||||
|
||||
Element item = view.Parent;
|
||||
|
||||
while (true)
|
||||
{
|
||||
if (item == null) break;
|
||||
if (item is ContentPage) break;
|
||||
|
||||
item = item.Parent;
|
||||
}
|
||||
|
||||
return (item as ContentPage);
|
||||
}
|
||||
|
||||
public static T GetContentPage<T>(ContentView view)
|
||||
{
|
||||
if (view == null) return default(T);
|
||||
|
||||
Element item = view.Parent;
|
||||
|
||||
while (true)
|
||||
{
|
||||
if (item == null) break;
|
||||
if (item is T) break;
|
||||
|
||||
item = item.Parent;
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
return (T)Convert.ChangeType(item, typeof(T));
|
||||
}
|
||||
catch (InvalidCastException)
|
||||
{
|
||||
return default(T);
|
||||
}
|
||||
}
|
||||
|
||||
public static App GetApp(ContentView view)
|
||||
{
|
||||
if (view == null) return null;
|
||||
|
||||
Element item = view.Parent;
|
||||
|
||||
while (true)
|
||||
{
|
||||
if (item == null) break;
|
||||
if (item is App) break;
|
||||
|
||||
item = item.Parent;
|
||||
}
|
||||
|
||||
return (item as App);
|
||||
}
|
||||
|
||||
public static Application GetApplication(ContentView view)
|
||||
{
|
||||
if (view == null) return null;
|
||||
|
||||
Element item = view.Parent;
|
||||
|
||||
while (true)
|
||||
{
|
||||
if (item == null) break;
|
||||
if (item is Application) break;
|
||||
|
||||
item = item.Parent;
|
||||
}
|
||||
|
||||
return (item as Application);
|
||||
}
|
||||
|
||||
public static void SetMainPage(ContentView view, Page page)
|
||||
{
|
||||
if (view == null) return;
|
||||
if (view.Parent == null) return;
|
||||
if (page == null) return;
|
||||
|
||||
Application rs = GetApplication(view);
|
||||
if (rs == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
Device.BeginInvokeOnMainThread(() =>
|
||||
{
|
||||
//rs.MainPage = new NavigationPage(new PasswordResetPage());
|
||||
rs.MainPage = page;
|
||||
});
|
||||
}
|
||||
|
||||
public static async void PushMainPageNavigation(ContentView view, Page page)
|
||||
{
|
||||
if (view == null) return;
|
||||
if (view.Parent == null) return;
|
||||
if (page == null) return;
|
||||
|
||||
Application rs = GetApplication(view);
|
||||
if (rs == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
await rs?.MainPage.Navigation.PushAsync(page);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user