Develop #10
@@ -14,5 +14,15 @@
|
|||||||
<views:LoginView />
|
<views:LoginView />
|
||||||
<!-- This is a UserControl -->
|
<!-- This is a UserControl -->
|
||||||
</DataTemplate>
|
</DataTemplate>
|
||||||
|
|
||||||
|
<ResourceDictionary>
|
||||||
|
<ResourceDictionary.MergedDictionaries>
|
||||||
|
<!--<ResourceDictionary Source="Styles/Fonts.xaml"/>-->
|
||||||
|
<ResourceDictionary Source="Styles/Colors.xaml"/>
|
||||||
|
<ResourceDictionary Source="Styles/Buttons.xaml"/>
|
||||||
|
<!--<ResourceDictionary Source="Styles/Texts.xaml"/>
|
||||||
|
<ResourceDictionary Source="Styles/Windows.xaml"/>-->
|
||||||
|
</ResourceDictionary.MergedDictionaries>
|
||||||
|
</ResourceDictionary>
|
||||||
</Application.Resources>
|
</Application.Resources>
|
||||||
</Application>
|
</Application>
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
<OutputType>WinExe</OutputType>
|
<OutputType>WinExe</OutputType>
|
||||||
<TargetFramework>netcoreapp3.1</TargetFramework>
|
<TargetFramework>netcoreapp3.1</TargetFramework>
|
||||||
<UseWPF>true</UseWPF>
|
<UseWPF>true</UseWPF>
|
||||||
<ApplicationIcon>Images\Logo\icon1.ico</ApplicationIcon>
|
<ApplicationIcon></ApplicationIcon>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
@@ -20,7 +20,7 @@
|
|||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Folder Include="Styles\" />
|
<Folder Include="Properties\" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<Import Project="..\Hashing\Hashing.projitems" Label="Shared" />
|
<Import Project="..\Hashing\Hashing.projitems" Label="Shared" />
|
||||||
|
|||||||
@@ -1,5 +1,22 @@
|
|||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||||
xmlns:local="clr-namespace:ClientApp.Styles">
|
xmlns:local="clr-namespace:ClientApp">
|
||||||
|
|
||||||
|
<ResourceDictionary.MergedDictionaries>
|
||||||
|
<ResourceDictionary Source="Colors.xaml"/>
|
||||||
|
</ResourceDictionary.MergedDictionaries>
|
||||||
|
|
||||||
|
<Style TargetType="{x:Type Button}" x:Key="Hoverless">
|
||||||
|
<Setter Property="Background" Value="Transparent"/>
|
||||||
|
<Setter Property="BorderThickness" Value="0"/>
|
||||||
|
<Setter Property="Template">
|
||||||
|
<Setter.Value>
|
||||||
|
<ControlTemplate TargetType="{x:Type Button}">
|
||||||
|
<Border Padding="{TemplateBinding Padding}" Background="{TemplateBinding Background}">
|
||||||
|
<ContentPresenter VerticalAlignment="Center" HorizontalAlignment="Center"/>
|
||||||
|
</Border>
|
||||||
|
</ControlTemplate>
|
||||||
|
</Setter.Value>
|
||||||
|
</Setter>
|
||||||
|
</Style>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
@@ -1,5 +1,21 @@
|
|||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||||
xmlns:local="clr-namespace:ClientApp.Styles">
|
xmlns:local="clr-namespace:ClientApp">
|
||||||
|
|
||||||
|
<Color x:Key="BackgroundLight">#efefef</Color>
|
||||||
|
<SolidColorBrush x:Key="BackgroundLightBrush" Color="{StaticResource BackgroundLight}"/>
|
||||||
|
|
||||||
|
|
||||||
|
<Color x:Key="BackgroundVeryLight">#fafafa</Color>
|
||||||
|
<SolidColorBrush x:Key="BackgroundVeryLightBrush" Color="{StaticResource BackgroundVeryLight}"/>
|
||||||
|
|
||||||
|
<Color x:Key="ForegroundMain">#686868</Color>
|
||||||
|
<SolidColorBrush x:Key="ForegroundMainBrush" Color="{StaticResource ForegroundMain}"/>
|
||||||
|
|
||||||
|
<Color x:Key="ForegroundVeryDark">#000</Color>
|
||||||
|
<SolidColorBrush x:Key="ForegroundVeryDarkBrush" Color="{StaticResource ForegroundVeryDark}"/>
|
||||||
|
|
||||||
|
<Color x:Key="ForegroundWhite">#fff</Color>
|
||||||
|
<SolidColorBrush x:Key="ForegroundWhiteBrush" Color="{StaticResource ForegroundWhite}"/>
|
||||||
|
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
5
ClientApp/Styles/Fonts.xaml
Normal file
5
ClientApp/Styles/Fonts.xaml
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||||
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||||
|
xmlns:local="clr-namespace:ClientApp">
|
||||||
|
|
||||||
|
</ResourceDictionary>
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||||
xmlns:local="clr-namespace:ClientApp.Styles">
|
xmlns:local="clr-namespace:ClientApp">
|
||||||
|
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||||
xmlns:local="clr-namespace:ClientApp.Styles">
|
xmlns:local="clr-namespace:ClientApp">
|
||||||
|
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
@@ -7,6 +7,11 @@ namespace ClientApp.Utils
|
|||||||
{
|
{
|
||||||
public abstract class ObservableObject : INotifyPropertyChanged
|
public abstract class ObservableObject : INotifyPropertyChanged
|
||||||
{
|
{
|
||||||
public event PropertyChangedEventHandler PropertyChanged;
|
public event PropertyChangedEventHandler PropertyChanged = (sender, e) => { };
|
||||||
|
|
||||||
|
public void OnPropertyChanged(string name)
|
||||||
|
{
|
||||||
|
PropertyChanged(this, new PropertyChangedEventArgs(name));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,18 +3,82 @@ using ClientApp.Utils;
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
|
using System.Windows;
|
||||||
|
|
||||||
namespace ClientApp.ViewModels
|
namespace ClientApp.ViewModels
|
||||||
{
|
{
|
||||||
class MainWindowViewModel : ObservableObject
|
class MainWindowViewModel : ObservableObject
|
||||||
{
|
{
|
||||||
|
#region private members
|
||||||
|
|
||||||
|
private Window mWindow;
|
||||||
|
|
||||||
|
private int mOuterMarginSize = 10;
|
||||||
|
private int mWindowRadius = 10;
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region public properties
|
||||||
public Info InfoModel { get; set; }
|
public Info InfoModel { get; set; }
|
||||||
|
|
||||||
public ObservableObject SelectedViewModel { get; set; }
|
public ObservableObject SelectedViewModel { get; set; }
|
||||||
|
|
||||||
public Client client { get; }
|
public Client client { get; }
|
||||||
|
|
||||||
public MainWindowViewModel(Client client)
|
/// <summary>
|
||||||
|
/// size of the resize border around the window
|
||||||
|
/// </summary>
|
||||||
|
public int ResizeBorder { get; set; } = 6;
|
||||||
|
|
||||||
|
public Thickness ResizeBorderThickness { get { return new Thickness(ResizeBorder + OuterMarginSize); } }
|
||||||
|
|
||||||
|
public Thickness OuterMarginThickness { get { return new Thickness(OuterMarginSize); } }
|
||||||
|
|
||||||
|
public CornerRadius WindowCornerRadius { get { return new CornerRadius(WindowRadius); } }
|
||||||
|
|
||||||
|
public int OuterMarginSize
|
||||||
{
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return mWindow.WindowState == WindowState.Maximized ? 0 : mOuterMarginSize;
|
||||||
|
}
|
||||||
|
set
|
||||||
|
{
|
||||||
|
mOuterMarginSize = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public int WindowRadius
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return mWindow.WindowState == WindowState.Maximized ? 0 : mWindowRadius;
|
||||||
|
}
|
||||||
|
set
|
||||||
|
{
|
||||||
|
mWindowRadius = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public int TitleHeight { get; set; } = 42;
|
||||||
|
|
||||||
|
public GridLength TitleHeightGridLegth { get { return new GridLength(TitleHeight + ResizeBorder); } }
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
public MainWindowViewModel(Window window, Client client)
|
||||||
|
{
|
||||||
|
this.mWindow = window;
|
||||||
|
|
||||||
|
this.mWindow.StateChanged += (sender, e) =>
|
||||||
|
{
|
||||||
|
OnPropertyChanged(nameof(ResizeBorderThickness));
|
||||||
|
OnPropertyChanged(nameof(OuterMarginThickness));
|
||||||
|
OnPropertyChanged(nameof(WindowCornerRadius));
|
||||||
|
OnPropertyChanged(nameof(OuterMarginSize));
|
||||||
|
OnPropertyChanged(nameof(WindowRadius));
|
||||||
|
};
|
||||||
|
|
||||||
this.InfoModel = new Info();
|
this.InfoModel = new Info();
|
||||||
this.client = client;
|
this.client = client;
|
||||||
LoginViewModel loginViewModel = new LoginViewModel(this);
|
LoginViewModel loginViewModel = new LoginViewModel(this);
|
||||||
|
|||||||
@@ -9,10 +9,67 @@
|
|||||||
mc:Ignorable="d"
|
mc:Ignorable="d"
|
||||||
WindowStyle="None"
|
WindowStyle="None"
|
||||||
AllowsTransparency="True"
|
AllowsTransparency="True"
|
||||||
Title="Whaazzzzuuuuuuuup">
|
x:Name="applicatonWindow"
|
||||||
<!--Icon="pack://application:,,,/Images/Logo/icon1_small.ico"-->
|
WindowStartupLocation="CenterScreen"
|
||||||
<Grid>
|
Title="Whaazzzzuuuuuuuup"
|
||||||
|
Width="500"
|
||||||
|
Height="500">
|
||||||
|
<!--Icon="pack://application:,,,/Images/Log/icon1_small.ico"-->
|
||||||
|
|
||||||
|
<Window.Resources>
|
||||||
|
<Style TargetType="{x:Type local:MainWindow}">
|
||||||
|
<Setter Property="Template">
|
||||||
|
<Setter.Value>
|
||||||
|
<ControlTemplate TargetType="{x:Type Window}">
|
||||||
|
<Border Padding="{Binding OuterMarginThickness, FallbackValue=10}" >
|
||||||
|
<Grid>
|
||||||
|
<Border CornerRadius="{Binding WindowCornerRadius, FallbackValue=10}"
|
||||||
|
Background="#efefef">
|
||||||
|
<Border.Effect>
|
||||||
|
<DropShadowEffect ShadowDepth="0" Opacity="0.2"/>
|
||||||
|
</Border.Effect>
|
||||||
|
</Border>
|
||||||
|
<Grid>
|
||||||
|
<Grid.RowDefinitions>
|
||||||
|
<RowDefinition Height="{Binding TitleHeightGridLength, FallbackValue=42}"/>
|
||||||
|
<RowDefinition Height="Auto"/>
|
||||||
|
<RowDefinition Height="*"/>
|
||||||
|
|
||||||
|
</Grid.RowDefinitions>
|
||||||
|
|
||||||
|
<!-- Title bar -->
|
||||||
|
<Grid Grid.Column="0" Grid.Row="0" Panel.ZIndex="1" Background="Red">
|
||||||
|
<Grid.ColumnDefinitions>
|
||||||
|
<ColumnDefinition Width="Auto"/>
|
||||||
|
<ColumnDefinition Width="*"/>
|
||||||
|
<ColumnDefinition Width="Auto"/>
|
||||||
|
</Grid.ColumnDefinitions>
|
||||||
|
|
||||||
|
<!-- icon -->
|
||||||
|
<Button Style="{StaticResource Hoverless}" WindowChrome.IsHitTestVisibleInChrome="True" Command="{Binding MenuCommand}">
|
||||||
|
<Image Source="/Images/Stone.png"/>
|
||||||
|
</Button>
|
||||||
|
</Grid>
|
||||||
|
|
||||||
|
</Grid>
|
||||||
|
</Grid>
|
||||||
|
</Border>
|
||||||
|
</ControlTemplate>
|
||||||
|
</Setter.Value>
|
||||||
|
</Setter>
|
||||||
|
</Style>
|
||||||
|
</Window.Resources>
|
||||||
|
|
||||||
|
<WindowChrome.WindowChrome>
|
||||||
|
<WindowChrome
|
||||||
|
ResizeBorderThickness="{Binding ResizeBorderThickness}"
|
||||||
|
CaptionHeight="{Binding TitleHeight}"
|
||||||
|
CornerRadius="0"
|
||||||
|
GlassFrameThickness="0"/>
|
||||||
|
</WindowChrome.WindowChrome>
|
||||||
|
|
||||||
|
<!--<Grid>
|
||||||
<Frame Content="{Binding SelectedViewModel}" Focusable="False"/>
|
<Frame Content="{Binding SelectedViewModel}" Focusable="False"/>
|
||||||
<Label Content="gemaakt door: mensen" DockPanel.Dock="Bottom" HorizontalAlignment="Right" VerticalAlignment="Bottom" FontStyle="Italic" Foreground="Gray"/>
|
<Label Content="gemaakt door: mensen" DockPanel.Dock="Bottom" HorizontalAlignment="Right" VerticalAlignment="Bottom" FontStyle="Italic" Foreground="Gray"/>
|
||||||
</Grid>
|
</Grid>-->
|
||||||
</Window>
|
</Window>
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ namespace ClientApp
|
|||||||
Client client = new Client();
|
Client client = new Client();
|
||||||
|
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
DataContext = new MainWindowViewModel(client);
|
DataContext = new MainWindowViewModel(this, client);
|
||||||
|
|
||||||
//BLEHandler bLEHandler = new BLEHandler(client);
|
//BLEHandler bLEHandler = new BLEHandler(client);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user