Prism.DryIoc.Forms
7.0.0.124-pre
Prefix Reserved
See the version list below for details.
dotnet add package Prism.DryIoc.Forms --version 7.0.0.124-pre
NuGet\Install-Package Prism.DryIoc.Forms -Version 7.0.0.124-pre
<PackageReference Include="Prism.DryIoc.Forms" Version="7.0.0.124-pre" />
paket add Prism.DryIoc.Forms --version 7.0.0.124-pre
#r "nuget: Prism.DryIoc.Forms, 7.0.0.124-pre"
// Install Prism.DryIoc.Forms as a Cake Addin #addin nuget:?package=Prism.DryIoc.Forms&version=7.0.0.124-pre&prerelease // Install Prism.DryIoc.Forms as a Cake Tool #tool nuget:?package=Prism.DryIoc.Forms&version=7.0.0.124-pre&prerelease
Use these extensions to build Xamarin.Forms applications with Prism and DryIoc.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp1.0 was computed. netcoreapp1.1 was computed. netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard1.0 is compatible. netstandard1.1 was computed. netstandard1.2 was computed. netstandard1.3 was computed. netstandard1.4 was computed. netstandard1.5 was computed. netstandard1.6 was computed. netstandard2.0 was computed. netstandard2.1 was computed. |
.NET Framework | net45 was computed. net451 was computed. net452 was computed. net46 was computed. net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen30 was computed. tizen40 was computed. tizen60 was computed. |
Universal Windows Platform | uap was computed. uap10.0 was computed. |
Windows Phone | wp8 was computed. wp81 was computed. wpa81 was computed. |
Windows Store | netcore was computed. netcore45 was computed. netcore451 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 1.0
- DryIoc.dll (>= 2.12.2)
- NETStandard.Library (>= 1.6.1)
- Prism.Forms (>= 7.0.0.124-pre)
NuGet packages (8)
Showing the top 5 NuGet packages that depend on Prism.DryIoc.Forms:
Package | Downloads |
---|---|
Discovery.Library
Package Description |
|
EltraXamCommon
Eltra - CANOpen based IoT Framework - SDK - Xamarin UI |
|
Prism.Plugin.Popups.DryIoc
[DEPRECATED] Please use Prism.Plugin.Popups instead. Prism DryIoc Plugin for Xamarin Forms to provide Popup Navigation |
|
Plugin.PersistenceFramework
This Melbourne App Development Persistence Framework plugin provides methods to perform common persistence functionality that most business apps require. |
|
Ease.NUnit.DryIoc.PrismForms
Package Description |
GitHub repositories (10)
Showing the top 5 popular GitHub repositories that depend on Prism.DryIoc.Forms:
Repository | Stars |
---|---|
cocoa-mhlw/cocoa
|
|
GiampaoloGabba/Xamarin.Plugin.SharedTransitions
Shared Element Transitions between pages in Xamarin.Forms (IOS/Android)
|
|
PrismLibrary/Prism-Samples-Forms
Samples that demonstrate how to use various Prism features with Xamarin.Forms
|
|
dansiegel/Mobile.BuildTools
The Mobile.BuildTools makes it easier to develop code bases in a clean, consistent, secure, and configurable way. Determine at Build which environment your app needs to run on, and what Client Secrets it should have. Plus many more amazing features!
|
|
dansiegel/Prism.Plugin.Popups
This provides extensibility for Prism.Forms INavigationService to handle Popup Views
|
Version | Downloads | Last updated |
---|---|---|
9.0.537 | 829 | 8/20/2024 |
9.0.401-pre | 244 | 2/14/2024 |
9.0.271-pre | 425 | 10/8/2023 |
8.1.97 | 632,957 | 5/24/2021 |
8.0.0.1909 | 200,373 | 10/21/2020 |
8.0.0.1850-pre | 1,037 | 8/25/2020 |
8.0.0.1740-pre | 1,708 | 5/5/2020 |
7.2.0.1422 | 845,527 | 11/21/2019 |
7.2.0.1367 | 98,585 | 7/24/2019 |
7.2.0.1347-pre | 2,071 | 6/11/2019 |
7.2.0.1233-pre | 1,028 | 5/6/2019 |
7.2.0.1038-pre | 1,424 | 2/20/2019 |
7.2.0.708-pre | 1,095 | 12/4/2018 |
7.1.0.431 | 230,055 | 10/15/2018 |
7.1.0.279-pre | 1,335 | 9/20/2018 |
7.1.0.172-pre | 4,223 | 6/15/2018 |
7.1.0.135-pre | 1,262 | 5/9/2018 |
7.1.0.123-pre | 2,213 | 4/2/2018 |
7.0.0.396 | 66,453 | 1/22/2018 |
7.0.0.362 | 3,779 | 1/12/2018 |
7.0.0.336-pre | 1,463 | 12/7/2017 |
7.0.0.269-pre | 1,047 | 11/16/2017 |
7.0.0.168-pre | 10,267 | 10/13/2017 |
7.0.0.124-pre | 2,219 | 10/6/2017 |
7.0.0-pre1 | 1,141 | 9/22/2017 |
6.3.0.1 | 29,664 | 3/25/2017 |
6.3.0 | 1,539 | 3/25/2017 |
6.3.0-pre2 | 1,069 | 2/26/2017 |
6.3.0-pre1 | 1,506 | 11/2/2016 |
6.2.0 | 2,543 | 8/10/2016 |
## Prism.Core
* .NET Standard Support
* Added method to clear all errors on ErrorsContainer
* Add capability to DelegateCommand's ObservesProperty to observe properties of complex types
Example:
`ObservesProperty(() => Property.NestedProperty.NestedPoperty)`
## Prism.Forms
* Fixed #683: .NET Standard support
* Fixed #765: Deep linking within a NavigationPage results in an incorrect ContentPage Title on Android
* Fixed #1008: NavigationParameters: Not possible to specify parent type as generic parameter T
* Fixed #1024: XF: NavigationService swallowing Exceptions
* Fixed #1025: Xamarin.Forms deprecated the Device.OS property in favor of the RuntimePlatform property.
* Fixed #1027: Support macOS
* Fixed #1044: When Detail of MasterDetailPage is null, Modal Navigation is possible
* Fixed #1045: When calling NavigateAsync with NavigationPage, old page's Destroy on the stack is not called
* Fixed #1046: When calling DeepLink from Navigation Stack, the second page becomes Modal navigation
* Fixed #1054: When deep linking within NavigationPage, page order is reversed
* Fixed #1063: Master of MasterDetailPage will not be destroyed
* Fixed #1085: Error occurs if null path is specified in EventToCommandBehavior
* Fixed #1089: DebugLogger does not work in nuget-package
* Fixed #1132: Prism Forms Modularity extension methods
* Fixed #1133: IModuleCatalog AddModule returns wrong type
* Fixed #1139: Modularity Enhancements
* Fixed #1076: IActiveAware not working when ContentPage (as child of a TabbedPage) is wrapped into a NavigationPage
**IDeviceService**
* deprecated OnPlatform methods
* added DeviceRuntimePlatform property - this mimics the XF API and returns a string
* added RuntimePlatform property which returns an Enum of type RuntimePlatform and wraps the XF string-based values
**Container Extensions**
* deprecated the RegisterTypeForNavigationOnPlatform signature that requires explicit platform parameters
* added new signature that accepts new IPlatform objects
Example:
```
Container.RegisterTypeForNavigationOnPlatform<MainPage, MainPageViewModel>("Main",
new Platform<MainPage_Android>(RuntimePlatform.Android),
new Platform<MainPage_iOS>(RuntimePlatform.iOS));
```
# TabbedPage Navigation Behavior Change - BREAKING
## Current Behavior (v6.3.0)
`NavigateAsync("TabbedPage/ViewA/ViewB")` will select the tab ViewA in the TabbedPage if it exists, then continue navigating. If ViewA does not exist as a tab, then you will continue to navigate as expected.
`NavigateAsync("TabbedPage/NavigationPage/ViewA/ViewB")` would search the TabbedPage for the first instance of a tab that was a NavigationPage, then navigate within the Navigation page the remaining ViewA and ViewB pages. This provided the ability to deep link into a tab's nested navigation page, but there was no way to opt-out of this behavior.
Also, the INavigationAware methods did not get called to all tabs meaning that you would be responsible for forwarding any parameters to all your tabs.
## New Behavior
`NavigateAsync("TabbedPage/ViewA/ViewB")` will **no longer** select any tabs, but rather continue processing the navigation as separate pages on the navigation stack.
If you wish to select a tab, you will now use a parameter called "selectedTab" to indicate which tab you would like to select.
`NavigateAsync("TabbedPage?selectedTab=MiddleTab/ViewA/ViewB")`
This will navigate to the TabbedPage, selected the "MiddleTab" and continue navigating ViewA and ViewB onto the navigation stack.
For tabs that are wrapped inside a NavigationPage, you can use the "|" symbol to indicate the hierarchy.
`NavigateAsync("TabbedPage?selectedTab=NavigationPage|MiddleTab")`
There is a constant in the `KnownNavigationParameters` called `SelectedTab` that you can use instead of a string.
`NavigateAsync($"TabbedPage?{KnownNavigationParameters.SelectedTab}=MiddleTab")`
This will search each tab to see if it is a navigation page and if the first page on the stack matches "MiddleTab". This is much more flexible than the existing behavior as before it would take the first instance of the NavigationPage found. Now you can choose which tab exactly.
Some INavigationAware methods are now fired on all Tabs:
- OnNavigatingTo will be invoked on the TabbedPage and ALL TABS.
- OnNavigatedTo will be invoked on the TabbedPage and only the SELECTED TAB.
- OnNavigatedFrom will be invoked on the TabbedPage and only the SELECTED TAB.
**Note**: the parameter key `selectedTab` is now a reserved parameter name. Similar to a reserved keyword in C#. If you use this in your app as a key, you may experience undesired behavior.
**Note**: At this time there is no native support for deep linking into a Tab that is a navigation page. Please let me know if you need this functionality.