Jump to: navigation, search

Difference between revisions of "Version 3.6 (WinX)"


(New features)
Line 7: Line 7:
 
* The element in the middle of the screen within a !ListView is memorised. With this information the scroll position is memorised. But the ListView does need an unique identifying name (x:name) to work properly. Furthermore, if list elements depend on other UI-elements those have to be created above the ListView in the XAML.
 
* The element in the middle of the screen within a !ListView is memorised. With this information the scroll position is memorised. But the ListView does need an unique identifying name (x:name) to work properly. Furthermore, if list elements depend on other UI-elements those have to be created above the ListView in the XAML.
 
* The feature of [[Login_View#UWP_.26_Xamarin_clients|remembering user credentials]] is redesigned.
 
* The feature of [[Login_View#UWP_.26_Xamarin_clients|remembering user credentials]] is redesigned.
* The GlobalStatusBar can now be fully customized in the template: "UBIKGlobalStatusBar.xaml"
+
* The GlobalStatusBar can now be fully customized in the template: ''UBIKGlobalStatusBar.xaml''
 +
* The AuthenticationPage (Start Page of the App) can now be fully customized in the template: ''UBIKStartArea.xaml''
 
* It is now possible to use external Bluetooth RFID Readers to scan [[RFID_tags#tab=WinX_External_Scanner|RFID Tags]] in UBIK.
 
* It is now possible to use external Bluetooth RFID Readers to scan [[RFID_tags#tab=WinX_External_Scanner|RFID Tags]] in UBIK.
 +
 +
[[Category:Version 3.6|Version 3.6 (WinX)]]
  
 
=== Enhancements ===
 
=== Enhancements ===

Revision as of 09:20, 29 August 2019

IC Attention.pngThere are mandatory Xaml changes and existing customizings need to be updated.
[edit]

Initial Release

New features

  • Position and Orientation information of seperate source systems (GPS, Compass, AR-Markers, etc.) are now combined based on their probabilistic error levels using an Extended Kalman Filter.
  • It is now possible to persist the scroll position of a ListView when browsing through the content hierarchy. But the ListView does need an unique identifying name (x:name) to work properly. Furthermore, if list elements depend on other UI-elements those have to be created above the ListView in the XAML.
  • The element in the middle of the screen within a !ListView is memorised. With this information the scroll position is memorised. But the ListView does need an unique identifying name (x:name) to work properly. Furthermore, if list elements depend on other UI-elements those have to be created above the ListView in the XAML.
  • The feature of remembering user credentials is redesigned.
  • The GlobalStatusBar can now be fully customized in the template: UBIKGlobalStatusBar.xaml
  • The AuthenticationPage (Start Page of the App) can now be fully customized in the template: UBIKStartArea.xaml
  • It is now possible to use external Bluetooth RFID Readers to scan RFID Tags in UBIK.

Enhancements

  • Simplified and improved the bindings to TemplateService and its templates. See Xaml Changes.
  • The shortcut key to activate the developer mode is changed from F12 to Ctrl+F12 (to reduce activations by accident and to avoid conflicts with other applications).
  • Improved the performance and responsiveness when loading large lists.

Bugfixes

  • Fixed an issue when clicking on ListViewItem in ZoomedOutListView it does not navigate, when clicking on the right side of the object


Build History

Xaml Changes


We have made some improvements to make some bindings in Xaml code easier and more efficient. Some changes to your existing Xaml customizings might be necessary. Please refer to each section to see if the change is mandatory or not.

Binding to TemplateService and the templates

This change is not mandatory and your existing Xamls will still work. We do recommend updating them, though.

Previously the TemplateService (the one providing access to all customizable templates) was only available on certain views (e.g. pages, dialogs, etc.). And the binding to it could only be done using named element like

<ContentControl ContentTemplate="{Binding ElementName=contentPage, Path=TemplateService.UBIKChildPageActionTemplate}" />

It is now made accessible from all view models (you can use the developer mode to check its availability). Also, you can now use the exact names of the template files as indexers for binding to those templates. Therefore, the binding can be changed to something like

<ContentControl ContentTemplate="{Binding TemplateService[UBIKChildPageAction]}" />

Use SelectionBoundListView instead of ListView

A SelectionBoundListView was already available in earlier versions but not mandatory. For performance improvements, it is now mandatory wherever you display UBIK® content (objects, properties, etc.). You need to add a namespace like xmlns:uc="using:UBIK.WinX.Controls" to your Xaml file and use it like <uc:SelectionBoundListView ... />.

IC Hint square.pngTechnically speaking, SelectionBoundListView informs item view models when their corresponding items are visualized. This way, view models can skip a lot of unnecessary work (on the UI) when their views are not visible. If the regular ListView is used instead, the item views will not reflect content changes until the page is reloaded/refreshed.