Skip to content

Commit 20a110a

Browse files
authored
Merge pull request #777 from unoplatform/dev/erli/vs/navigation-sample
feat: Navigation Samples
2 parents d30313f + df43289 commit 20a110a

File tree

125 files changed

+4192
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

125 files changed

+4192
-0
lines changed

UI/Navigation/README.md

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
# Uno Platform Navigation Samples
2+
3+
This repository provides simple, to-the-point code samples for the [Uno.Extensions Navigation](https://platform.uno/docs/articles/external/uno.extensions/doc/Learn/Navigation/NavigationOverview.html).
4+
5+
## Samples
6+
7+
- [Page Navigation](src/Navigation/Presentation/PageNavigation/)
8+
- Samples
9+
- [Navigate via Code](src/Navigation/Presentation/PageNavigation/PageNavigationViewModel.cs#L15)
10+
- [Navigate via XAML](src/Navigation/Presentation/PageNavigation/PageNavigation.xaml#L30)
11+
- Docs
12+
- [How-To: Navigate in Code](https://platform.uno/docs/articles/external/uno.extensions/doc/Learn/Navigation/HowTo-NavigateInCode.html)
13+
- [How-To: Navigate in XAML](https://platform.uno/docs/articles/external/uno.extensions/doc/Learn/Navigation/HowTo-NavigateInXAML.html)
14+
- [Display a Message Dialog](src/Navigation/Presentation/MessageDialog)
15+
- Samples
16+
- [XAML](src/Navigation/Presentation/MessageDialog/MessageDialogPage.xaml#L32-L33)
17+
- [Code](src/Navigation/Presentation/MessageDialog/MessageDialogViewModel.cs#L13-L33)
18+
- Docs
19+
- [How-To: Display a Message Dialog](https://platform.uno/docs/articles/external/uno.extensions/doc/Learn/Navigation/HowTo-DisplayMessageDialog.html)
20+
- [Display ContentDialog or Flyout](src/Navigation/Presentation/ModalDialog/ModalDialogPage.xaml)
21+
- Docs: [How-To: Display a Dialog (modal or flyout)](https://platform.uno/docs/articles/external/uno.extensions/doc/Learn/Navigation/HowTo-ShowDialog.html)
22+
- [Request a Value](src/Navigation/Presentation/RequestValue)
23+
- Docs: [How-To: Select a Value](https://platform.uno/docs/articles/external/uno.extensions/doc/Learn/Navigation/HowTo-SelectValue.html)
24+
- [Use TabBar to Switch Views](src/Navigation/Presentation/TabBarNavigation/TabBarNavigationPage.xaml)
25+
- Docs: [How-To: Use a TabBar to Switch Views](https://platform.uno/docs/articles/external/uno.extensions/doc/Learn/Navigation/Advanced/HowTo-UseTabBar.html)
26+
- [Use a NavigationView to Switch Views](src/Navigation/Presentation/MainPage.xaml)
27+
- Docs: [How-To: Use a NavigationView to Switch Views](https://platform.uno/docs/articles/external/uno.extensions/doc/Learn/Navigation/Advanced/HowTo-UseNavigationView.html)
28+
- [Use a ContentControl to Display a View](src/Navigation/Presentation/ContentControlNavigation/CControlNavigationPage.xaml)
29+
- Docs: [How-To: Use a ContentControl to Display a View](https://platform.uno/docs/articles/external/uno.extensions/doc/Learn/Navigation/Advanced/HowTo-UseContentControl.html)
30+
- [Send Data Between ViewModels with TabBar and NavigationView](src/Navigation/Presentation/TabBarWithDataNavigation)
31+
- [How to use ToQuery FromQuery](src/Navigation/App.xaml.cs#L88-L106)
32+
33+
If you encounter any issues with these samples above, please open an issue [here](https://github.com/unoplatform/Uno.Samples/issues/new).

UI/Navigation/src/.editorconfig

Lines changed: 167 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,167 @@
1+
; This file is for unifying the coding style for different editors and IDEs.
2+
; More information at http://editorconfig.org
3+
4+
# This file is the top-most EditorConfig file
5+
root = true
6+
7+
##########################################
8+
# Common Settings
9+
##########################################
10+
11+
[*]
12+
indent_style = tab
13+
end_of_line = crlf
14+
trim_trailing_whitespace = true
15+
insert_final_newline = true
16+
charset = utf-8
17+
18+
##########################################
19+
# File Extension Settings
20+
##########################################
21+
22+
[*.{yml,yaml}]
23+
indent_size = 2
24+
25+
[.vsconfig]
26+
indent_size = 2
27+
end_of_line = lf
28+
29+
[*.sln]
30+
indent_style = tab
31+
indent_size = 2
32+
33+
[*.{csproj,proj,projitems,shproj}]
34+
indent_size = 2
35+
36+
[*.{json,slnf}]
37+
indent_size = 2
38+
end_of_line = lf
39+
40+
[*.{props,targets}]
41+
indent_size = 2
42+
43+
[*.xaml]
44+
indent_size = 4
45+
charset = utf-8-bom
46+
47+
[*.xml]
48+
indent_size = 2
49+
end_of_line = lf
50+
51+
[*.plist]
52+
indent_size = 2
53+
indent_style = tab
54+
end_of_line = lf
55+
56+
[*.manifest]
57+
indent_size = 2
58+
59+
[*.appxmanifest]
60+
indent_size = 2
61+
62+
[*.{json,css,webmanifest}]
63+
indent_size = 2
64+
end_of_line = lf
65+
66+
[web.config]
67+
indent_size = 2
68+
end_of_line = lf
69+
70+
[*.sh]
71+
indent_size = 2
72+
end_of_line = lf
73+
74+
[*.cs]
75+
# EOL should be normalized by Git. See https://github.com/dotnet/format/issues/1099
76+
end_of_line = unset
77+
78+
# See https://github.com/dotnet/roslyn/issues/20356#issuecomment-310143926
79+
trim_trailing_whitespace = false
80+
81+
tab_width = 4
82+
indent_size = 4
83+
84+
# Sort using and Import directives with System.* appearing first
85+
dotnet_sort_system_directives_first = true
86+
87+
# Avoid "this." and "Me." if not necessary
88+
dotnet_style_qualification_for_field = false:suggestion
89+
dotnet_style_qualification_for_property = false:suggestion
90+
dotnet_style_qualification_for_method = false:suggestion
91+
dotnet_style_qualification_for_event = false:suggestion
92+
93+
#### Naming styles ####
94+
95+
# Naming rules
96+
97+
dotnet_naming_rule.interface_should_be_begins_with_i.severity = suggestion
98+
dotnet_naming_rule.interface_should_be_begins_with_i.symbols = interface
99+
dotnet_naming_rule.interface_should_be_begins_with_i.style = begins_with_i
100+
101+
dotnet_naming_rule.types_should_be_pascal_case.severity = suggestion
102+
dotnet_naming_rule.types_should_be_pascal_case.symbols = types
103+
dotnet_naming_rule.types_should_be_pascal_case.style = pascal_case
104+
105+
dotnet_naming_rule.non_field_members_should_be_pascal_case.severity = suggestion
106+
dotnet_naming_rule.non_field_members_should_be_pascal_case.symbols = non_field_members
107+
dotnet_naming_rule.non_field_members_should_be_pascal_case.style = pascal_case
108+
109+
# Symbol specifications
110+
111+
dotnet_naming_symbols.interface.applicable_kinds = interface
112+
dotnet_naming_symbols.interface.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
113+
dotnet_naming_symbols.interface.required_modifiers =
114+
115+
dotnet_naming_symbols.types.applicable_kinds = class, struct, interface, enum
116+
dotnet_naming_symbols.types.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
117+
dotnet_naming_symbols.types.required_modifiers =
118+
119+
dotnet_naming_symbols.non_field_members.applicable_kinds = property, event, method
120+
dotnet_naming_symbols.non_field_members.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
121+
dotnet_naming_symbols.non_field_members.required_modifiers =
122+
123+
# Naming styles
124+
125+
dotnet_naming_style.begins_with_i.required_prefix = I
126+
dotnet_naming_style.begins_with_i.required_suffix =
127+
dotnet_naming_style.begins_with_i.word_separator =
128+
dotnet_naming_style.begins_with_i.capitalization = pascal_case
129+
130+
dotnet_naming_style.pascal_case.required_prefix =
131+
dotnet_naming_style.pascal_case.required_suffix =
132+
dotnet_naming_style.pascal_case.word_separator =
133+
dotnet_naming_style.pascal_case.capitalization = pascal_case
134+
135+
dotnet_naming_style.pascal_case.required_prefix =
136+
dotnet_naming_style.pascal_case.required_suffix =
137+
dotnet_naming_style.pascal_case.word_separator =
138+
dotnet_naming_style.pascal_case.capitalization = pascal_case
139+
dotnet_style_operator_placement_when_wrapping = beginning_of_line
140+
dotnet_style_coalesce_expression = true:suggestion
141+
dotnet_style_null_propagation = true:suggestion
142+
dotnet_style_prefer_is_null_check_over_reference_equality_method = true:suggestion
143+
dotnet_style_prefer_auto_properties = true:silent
144+
dotnet_style_object_initializer = true:suggestion
145+
dotnet_style_collection_initializer = true:suggestion
146+
dotnet_style_prefer_simplified_boolean_expressions = true:suggestion
147+
dotnet_style_prefer_conditional_expression_over_assignment = true:silent
148+
dotnet_style_prefer_conditional_expression_over_return = true:silent
149+
dotnet_style_explicit_tuple_names = true:suggestion
150+
dotnet_style_prefer_inferred_tuple_names = true:suggestion
151+
152+
csharp_indent_labels = one_less_than_current
153+
csharp_using_directive_placement = outside_namespace:silent
154+
csharp_prefer_simple_using_statement = true:suggestion
155+
csharp_prefer_braces = true:silent
156+
csharp_style_namespace_declarations = file_scoped:warning
157+
csharp_style_prefer_method_group_conversion = true:silent
158+
csharp_style_prefer_top_level_statements = true:silent
159+
csharp_style_prefer_primary_constructors = true:suggestion
160+
csharp_style_expression_bodied_methods = false:silent
161+
csharp_style_expression_bodied_constructors = false:silent
162+
csharp_style_expression_bodied_operators = false:silent
163+
csharp_style_expression_bodied_properties = true:silent
164+
csharp_style_expression_bodied_indexers = true:silent
165+
csharp_style_expression_bodied_accessors = true:silent
166+
csharp_style_expression_bodied_lambdas = true:silent
167+
csharp_style_expression_bodied_local_functions = false:silent

0 commit comments

Comments
 (0)