Difference between revisions of "XAML"
(→Converters) |
(→Advanced) |
||
Line 47: | Line 47: | ||
* StringFormatConverter | * StringFormatConverter | ||
Returns a formatted string where placeholders will be filled with values supplied to its ''Param'' properties. | Returns a formatted string where placeholders will be filled with values supplied to its ''Param'' properties. | ||
− | * EvalExpressionConverter | + | * [[EvalExpressionConverter]] |
Evaluates a C# expression and returns the result. | Evaluates a C# expression and returns the result. | ||
+ | Example: | ||
+ | <source lang = "xml"> | ||
+ | <Grid> | ||
+ | <Grid.Resources> | ||
+ | <!-- Instantiate the converter and bind the Context to the current DataContext, the Param0 to a UI element of this page --> | ||
+ | <converters:EvalExpressionConverter x:Key="CodeConverter" Context="{Binding}" Param0="{Binding ElementName=ChildListView, Path=Name}" /> | ||
+ | </Grid.Resources> | ||
+ | <StackPanel Orientation="Horizontal"> | ||
+ | <!-- Create a TextBox where we can enter a C# expression --> | ||
+ | <TextBox | ||
+ | x:Name="CodeQuery" | ||
+ | MinWidth="240" Height="40" | ||
+ | Margin="0,10,10,0" HorizontalAlignment="Right" | ||
+ | VerticalAlignment="Top" | ||
+ | FontSize="18" | ||
+ | PlaceholderText="Expression"> | ||
+ | </TextBox> | ||
+ | <!-- Create a TextBlock where we display the result of the compiled expression --> | ||
+ | <TextBlock Text="{Binding ElementName=CodeQuery, Path=Text, Converter={StaticResource CodeConverter}}" /> | ||
+ | </StackPanel> | ||
+ | </Grid> | ||
+ | </source> | ||
Revision as of 10:37, 25 August 2016
The WinX User Interface can be vastly customized using XAML.
Contents
Templates
The UI is controlled by several predefined XAML templates which are loaded into the App at startup. There is a set of default template deployed with the App at installation, however, each of them can be overridden by placing the respective file in the folder [AppInstallPath\LocalState\XAML
General
- UBIKThemes.xaml
Controls the overall styling and behavior of the App, like standard Brushes (Colors) and Fonts.
AuthenticationPage
- UBIKSplashArea.xaml
- UBIKPageNavigation.xaml
Content Pages
- UBIKObjectIcon.xaml
- UBIKObjectIconSmall.xaml
RootPage
- UBIKMainLeftArea.xaml
- UBIKMainItem.xaml
- UBIKMainItemSmall.xaml
ChildPage
- UBIKChildItem.xaml
- UBIKChildItemSmall.xaml
- UBIKChildAction.xaml
- UBIKPriorityPropertyItem.xaml
DetailsPage
- UBIKDocumentItem.xaml
- UBIKDocumentItemSmall.xaml
Specific UBIK® Elements
Converters
Basic
- BooleanToVisibilityConverter
Converts a Boolean into a Visibility, where true will result in Visibility.Visible.
- BooleanToCollapsedConverter
Converts a Boolean into a Visibility, where true will result in Visibility.Collapsed.
Advanced
- StringFormatConverter
Returns a formatted string where placeholders will be filled with values supplied to its Param properties.
Evaluates a C# expression and returns the result. Example:
<Grid.Resources>
<!-- Instantiate the converter and bind the Context to the current DataContext, the Param0 to a UI element of this page -->
<converters:EvalExpressionConverter x:Key="CodeConverter" Context="{Binding}" Param0="{Binding ElementName=ChildListView, Path=Name}" />
</Grid.Resources>
<StackPanel Orientation="Horizontal">
<!-- Create a TextBox where we can enter a C# expression -->
<TextBox
x:Name="CodeQuery"
MinWidth="240" Height="40"
Margin="0,10,10,0" HorizontalAlignment="Right"
VerticalAlignment="Top"
FontSize="18"
PlaceholderText="Expression">
</TextBox>
<!-- Create a TextBlock where we display the result of the compiled expression -->
<TextBlock Text="{Binding ElementName=CodeQuery, Path=Text, Converter={StaticResource CodeConverter}}" />
</StackPanel>
</Grid>