Merge pull request #2 from Crylia/feature/login_window

Feature/login window
This commit is contained in:
Kievits Rene
2021-04-04 00:00:36 +02:00
committed by GitHub
46 changed files with 817 additions and 185 deletions

Binary file not shown.

View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<connectionStrings>
<add name="ServerDashboardDB" connectionString="Server=localhost;Database=ServerDashboardDB;User Id=SA;Password=Me262HG3;"/>
</connectionStrings>
<startup>
<supportedRuntime version="v3.1.13" sku=".NETFramework,Version=v4.7.2" />
</startup>
</configuration>

View File

@@ -2,7 +2,7 @@
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:Server_Dashboard"
StartupUri="MainWindow.xaml">
StartupUri="LoginWindow.xaml">
<Application.Resources>
<RadialGradientBrush x:Key="LoginBackground" GradientOrigin="0.5, 0.5" Center="0.5, 0.5">
@@ -12,6 +12,9 @@
</RadialGradientBrush.GradientStops>
</RadialGradientBrush>
<BooleanToVisibilityConverter x:Key="UserNameVisibillity"/>
<BooleanToVisibilityConverter x:Key="PasswordVisibillity"/>
<SolidColorBrush x:Key="Background" Color="#141424"/>
<!--A700 Teal-->
<SolidColorBrush x:Key="Green" Color="#00BFA5"/>
@@ -23,22 +26,8 @@
<SolidColorBrush x:Key="Yellow" Color="#FFEB3B"/>
<!--700 Yellow-->
<SolidColorBrush x:Key="PressedYellow" Color="#FBC02D"/>
<Style x:Key="loginButtonStyle" TargetType="Button">
<Setter Property="Background" Value="#25AEA6"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Button}">
<Border CornerRadius="4" Background="{TemplateBinding Background}">
<ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
</Style.Triggers>
</Style>
<!--800 Red-->
<SolidColorBrush x:Key="ErrorRed" Color="#c62828"/>
<Style x:Key="LoginViewBorder" TargetType="{x:Type Border}">
<Setter Property="BorderBrush" Value="#25AEA6"/>
@@ -56,7 +45,7 @@
<Setter Property="Background" Value="#1B1C20"/>
</Style>
<Style x:Name="LoginFormHint" x:Key="LoginFormTooltip" TargetType="{x:Type Label}">
<Style x:Name="HintText" x:Key="LoginFormTooltip" TargetType="{x:Type TextBlock}">
<Setter Property="Foreground" Value="#40AAAAAA"/>
<Setter Property="FontFamily" Value="Arial"/>
<Setter Property="FontSize" Value="20"/>
@@ -64,11 +53,6 @@
<Setter Property="HorizontalAlignment" Value="Left"/>
</Style>
<Style x:Key="LoginFormsInputBorder" TargetType="{x:Type Border}">
<Setter Property="BorderBrush" Value="#1B1C20"/>
<Setter Property="BorderThickness" Value="1"/>
</Style>
<Style x:Key="LoginFormInput" TargetType="{x:Type TextBox}">
<Setter Property="CaretBrush" Value="#BBBBBB"/>
<Setter Property="VerticalContentAlignment" Value="Center"/>
@@ -101,25 +85,28 @@
<Style x:Key="LoginFormButton" TargetType="{x:Type Button}">
<Setter Property="Width" Value="350"/>
<Setter Property="Height" Value="60"/>
<Setter Property="Background" Value="#25AEA6"/>
<Setter Property="BorderBrush" Value="Transparent"/>
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="Foreground" Value="{StaticResource Background}"/>
<Setter Property="Background" Value="#2A2D30"/>
<Setter Property="BorderBrush" Value="#25AEA6"/>
<Setter Property="BorderThickness" Value="2"/>
<Setter Property="Foreground" Value="#25AEA6"/>
<Setter Property="FontSize" Value="25"/>
<Setter Property="FontFamily" Value="Arial"/>
<Setter Property="Cursor" Value="Hand"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Button}">
<Border CornerRadius="4" Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}">
<TextBlock TextAlignment="Center" Padding="5" TextWrapping="Wrap" Text="{TemplateBinding Content}" VerticalAlignment="Center" HorizontalAlignment="Center"/>
<Border x:Name="Border" CornerRadius="4" Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}">
<TextBlock TextAlignment="Center" Padding="0" TextWrapping="Wrap" Text="{TemplateBinding Content}" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="#35bEb6"/>
<Setter Property="BorderBrush" Value="#35bEb6"/>
<Setter Property="Foreground" Value="#35bEb6"/>
</Trigger>
<Trigger Property="IsPressed" Value="True">
<Setter Property="Background" Value="#159E96"/>
<Setter Property="Background" Value="#25AEA6"/>
<Setter Property="Foreground" Value="#2A2D30"/>
<Setter Property="BorderThickness" Value="0"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
@@ -127,5 +114,39 @@
</Setter>
</Style>
<Style x:Key="LoginGreeter" TargetType="{x:Type TextBlock}">
<Setter Property="Foreground" Value="#878787"/>
<Setter Property="VerticalAlignment" Value="Center"/>
<Setter Property="HorizontalAlignment" Value="Center"/>
<Setter Property="FontSize" Value="40"/>
<Setter Property="TextAlignment" Value="Center"/>
</Style>
<Style x:Key="CloseButton" TargetType="{x:Type Button}">
<Setter Property="Background" Value="Transparent"/>
<Setter Property="Foreground" Value="#BBBBBB"/>
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="FontSize" Value="20"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Button}">
<Border x:Name="Border" CornerRadius="3" Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}">
<TextBlock TextAlignment="Center" Padding="0" TextWrapping="Wrap" Text="{TemplateBinding Content}" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="Red"/>
<Setter Property="Foreground" Value="Black"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="ErrorMessage" TargetType="{x:Type TextBlock}">
<Setter Property="FontSize" Value="14"/>
<Setter Property="Foreground" Value="{StaticResource ErrorRed}"/>
</Style>
</Application.Resources>
</Application>

View File

@@ -0,0 +1,20 @@
using System;
using System.Collections.Generic;
using System.Text;
using System.Windows;
namespace Server_Dashboard {
public abstract class BaseAttachedProperty<Parent, Property>
where Parent : BaseAttachedProperty<Parent, Property>, new() {
public event Action<DependencyObject, DependencyPropertyChangedEventArgs> ValueChanged = (sender, e) => { };
public static Parent Instance { get; private set; } = new Parent();
public static readonly DependencyProperty ValueProperty = DependencyProperty.RegisterAttached("Value", typeof(Property), typeof(BaseAttachedProperty<Parent, Property>), new PropertyMetadata(new PropertyChangedCallback(OnValuePropertyChanged)));
private static void OnValuePropertyChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) {
Instance.OnValueChanged(d, e);
Instance.ValueChanged(d, e);
}
public static Property GetValue(DependencyObject d) => (Property)d.GetValue(ValueProperty);
public static void SetValue(DependencyObject d, Property value) => d.SetValue(ValueProperty, value);
public virtual void OnValueChanged(DependencyObject sender, DependencyPropertyChangedEventArgs e) { }
}
}

View File

@@ -0,0 +1,30 @@
using System;
using System.Collections.Generic;
using System.Text;
using System.Windows;
using System.Windows.Controls;
namespace Server_Dashboard {
public class MonitorPasswordProperty : BaseAttachedProperty<MonitorPasswordProperty, bool> {
public override void OnValueChanged(DependencyObject sender, DependencyPropertyChangedEventArgs e) {
var passwordBox = sender as PasswordBox;
if (passwordBox == null)
return;
passwordBox.PasswordChanged -= PasswordBox_PasswordChanged;
if ((bool)e.NewValue) {
HasTextProperty.SetValue(passwordBox);
passwordBox.PasswordChanged += PasswordBox_PasswordChanged;
}
}
private void PasswordBox_PasswordChanged(object sender, RoutedEventArgs e) {
HasTextProperty.SetValue((PasswordBox)sender);
}
}
public class HasTextProperty : BaseAttachedProperty<HasTextProperty, bool> {
public static void SetValue(DependencyObject sender) {
SetValue(sender, ((PasswordBox)sender).SecurePassword.Length < 1);
}
}
}

View File

@@ -2,19 +2,37 @@
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
using System.Reflection;
namespace Server_Dashboard {
class DatabaseHandler {
public static class DatabaseHandler {
public static bool CheckLogin(string uname, string passwd) {
string valid = "False";
ConnectToDatabase(con => {
string query = "EXEC ValidateUserLogin @Username = @uname, @Password = @passwd, @Valid = @valid OUTPUT";
using (SqlCommand com = new SqlCommand(query, con)) {
com.Parameters.AddWithValue("@uname", uname);
com.Parameters.AddWithValue("@passwd", passwd);
com.Parameters.Add("@valid", SqlDbType.NVarChar, 250);
com.Parameters["@valid"].Direction = ParameterDirection.Output;
com.ExecuteNonQuery();
valid = Convert.ToString(com.Parameters["@Valid"].Value);
}
});
return Convert.ToBoolean(valid);
}
#region Private methods
/// <summary>
/// Opens a database connection
/// </summary>
/// <param name="callback">Callback type SqlConnection</param>
/// <returns></returns>
private SqlConnection ConnectToDatabase(Action<SqlConnection> callback) {
using (SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["Co2AuswertungDB"].ConnectionString)) {
private static SqlConnection ConnectToDatabase(Action<SqlConnection> callback) {
using (SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["ServerDashboardDB"].ConnectionString)) {
try {
con.Open();
callback(con);

View File

@@ -0,0 +1,74 @@
<Window x:Class="Server_Dashboard.LoginWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:i="http://schemas.microsoft.com/xaml/behaviors"
xmlns:local="clr-namespace:Server_Dashboard"
x:Name="Login"
mc:Ignorable="d"
Title="Server Dashboard" Height="700" Width="500" WindowStyle="None" ResizeMode="NoResize" Background="Transparent" AllowsTransparency="True">
<Border Style="{StaticResource LoginViewBorder}">
<Grid Grid.Row="0">
<Grid.RowDefinitions>
<RowDefinition Height="30"/>
<RowDefinition Height="*"/>
<RowDefinition Height="80"/>
<RowDefinition Height="80"/>
<RowDefinition Height="80"/>
<RowDefinition Height="30"/>
<RowDefinition Height=".4*"/>
</Grid.RowDefinitions>
<i:Interaction.Triggers>
<i:EventTrigger EventName="MouseDown">
<i:CallMethodAction MethodName="DragMove" TargetObject="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=Window}}"/>
</i:EventTrigger>
</i:Interaction.Triggers>
<Grid Grid.Row="0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="40"/>
</Grid.ColumnDefinitions>
<Label Grid.Column="0"/>
<Button Grid.Column="2" Style="{StaticResource CloseButton}" Content="✕">
<i:Interaction.Triggers>
<i:EventTrigger EventName="Click">
<i:CallMethodAction MethodName="Close" TargetObject="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=Window}}"/>
</i:EventTrigger>
</i:Interaction.Triggers>
</Button>
</Grid>
<Border Grid.Row="1" HorizontalAlignment="Center" VerticalAlignment="Center" BorderBrush="#35bEb6" BorderThickness="0 1 0 1">
<StackPanel VerticalAlignment="Center" Margin="0 0 0 5">
<TextBlock Text="Server Dashboard" Style="{StaticResource LoginGreeter}"/>
<TextBlock Text="Login" Style="{StaticResource LoginGreeter}"/>
</StackPanel>
</Border>
<Border Grid.Row="2" Style="{StaticResource LoginFormsBorder}">
<Grid Grid.Column="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="60"/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Image Grid.Column="0" Height="30" Source="Assets/Images/userlogin.png"/>
<TextBlock Text="Username" Style="{StaticResource LoginFormTooltip}" Visibility="{Binding ElementName=UserName, Path=Text.IsEmpty, Converter={StaticResource UserNameVisibillity}}" Grid.Column="1" IsHitTestVisible="False"/>
<TextBox Text="{Binding Username}" x:Name="UserName" Background="Transparent" Grid.Column="1" Style="{StaticResource LoginFormInput}"/>
</Grid>
</Border>
<!--Background="#1B1C20"-->
<Border Grid.Row="3" Style="{StaticResource LoginFormsBorder}">
<Grid Grid.Column="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="60"/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Image Grid.Column="0" Height="30" Source="Assets/Images/userpasswd.png"/>
<TextBlock Visibility="{Binding ElementName=Password, Path=(local:HasTextProperty.Value), Converter={StaticResource UserNameVisibillity}}" x:Name="PasswordHint" Text="Password" Style="{StaticResource LoginFormTooltip}" Grid.Column="1" IsHitTestVisible="False"/>
<PasswordBox local:MonitorPasswordProperty.Value="True" Grid.Column="1" x:Name="Password" Style="{StaticResource LoginFormPassword}"/>
</Grid>
</Border>
<Button Command="{Binding LoginCommand}" CommandParameter="{Binding ElementName=Login}" Grid.Row="4" Style="{StaticResource LoginFormButton}" Content="Login" Cursor="Hand"/>
<TextBlock Style="{StaticResource ErrorMessage}" Text="{Binding ErrorText}" VerticalAlignment="Center" HorizontalAlignment="Center" Grid.Row="5"/>
</Grid>
</Border>
</Window>

View File

@@ -0,0 +1,19 @@
using System;
using System.Security;
using System.Windows;
using System.Windows.Input;
namespace Server_Dashboard {
/// <summary>
/// Interaction logic for LoginWindow.xaml
/// </summary>
public partial class LoginWindow : Window, IHavePassword {
public LoginWindow() {
InitializeComponent();
DataContext = new LoginViewModel();
}
public SecureString SecurePassword => Password.SecurePassword;
}
}

View File

@@ -1,75 +0,0 @@
<Window x:Class="Server_Dashboard.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:Server_Dashboard"
mc:Ignorable="d"
Title="Server Dashboard" Height="600" Width="400">
<Border Style="{StaticResource LoginViewBorder}">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="80"/>
<RowDefinition Height="80"/>
<RowDefinition Height="80"/>
<RowDefinition Height=".5*"/>
</Grid.RowDefinitions>
<TextBlock Text="Login"/>
<Grid Grid.Row="1">
<Border Style="{StaticResource LoginFormsBorder}">
<Grid Grid.Column="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="60"/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Image Grid.Column="0" Height="30" Source="Assets/Images/userlogin.png"/>
<Border Grid.Column="1" Style="{StaticResource LoginFormsInputBorder}">
<TextBox Grid.Column="1" Style="{StaticResource LoginFormInput}"/>
</Border>
</Grid>
</Border>
</Grid>
<Grid Grid.Row="2">
<Border Style="{StaticResource LoginFormsBorder}">
<Grid Grid.Column="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="60"/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Image Grid.Column="0" Height="30" Source="Assets/Images/userpasswd.png"/>
<Border Grid.Column="1" Style="{StaticResource LoginFormsInputBorder}">
<PasswordBox Grid.Column="1" Style="{StaticResource LoginFormPassword}"/>
</Border>
</Grid>
</Border>
</Grid>
<Grid Grid.Row="3">
<Button Style="{StaticResource LoginFormButton}" Content="Anmelden"/>
</Grid>
<Grid Grid.Row="4">
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<Grid Height="20" VerticalAlignment="Top" Grid.Row="0">
<TextBlock Grid.Column="1" HorizontalAlignment="Center" FontSize="14" FontFamily="Arial" Foreground="#878787">
Noch keinen Account? Klicke
<Hyperlink Foreground="#25AEA6" TextDecorations="none" NavigateUri="https://www.youtube.com/watch?v=dQw4w9WgXcQ">
hier
</Hyperlink>
um einen zu erstellen!
</TextBlock>
</Grid>
<Grid VerticalAlignment="Top" Height="20" Grid.Row="2">
<TextBlock HorizontalAlignment="Center" FontSize="14" FontFamily="Arial" Foreground="#878787">
Passwort
<Hyperlink Foreground="#25AEA6" TextDecorations="none" NavigateUri="https://www.youtube.com/watch?v=dQw4w9WgXcQ">
Vergessen?
</Hyperlink>
</TextBlock>
</Grid>
</Grid>
</Grid>
</Border>
</Window>

View File

@@ -1,25 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace Server_Dashboard {
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window {
public MainWindow() {
InitializeComponent();
}
}
}

View File

@@ -0,0 +1,22 @@
using System;
using System.Collections.Generic;
using System.Runtime.InteropServices;
using System.Security;
using System.Text;
namespace Server_Dashboard {
public static class SecureStringHelpers {
public static string Unsecure(this SecureString secureString) {
if (secureString == null)
return string.Empty;
var unmanagedString = IntPtr.Zero;
try {
unmanagedString = Marshal.SecureStringToGlobalAllocUnicode(secureString);
return Marshal.PtrToStringUni(unmanagedString);
} finally {
Marshal.ZeroFreeGlobalAllocUnicode(unmanagedString);
}
}
}
}

View File

@@ -13,10 +13,7 @@
</ItemGroup>
<ItemGroup>
<Folder Include="Views\" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.Xaml.Behaviors.Wpf" Version="1.1.31" />
<PackageReference Include="System.Data.SqlClient" Version="4.8.2" />
</ItemGroup>
@@ -25,4 +22,8 @@
<Resource Include="Assets\Images\userpasswd.png" />
</ItemGroup>
<ItemGroup>
<Folder Include="Views\" />
</ItemGroup>
</Project>

View File

@@ -7,7 +7,7 @@
</ApplicationDefinition>
</ItemGroup>
<ItemGroup>
<Page Update="MainWindow.xaml">
<Page Update="LoginWindow.xaml">
<SubType>Designer</SubType>
</Page>
</ItemGroup>

View File

@@ -0,0 +1,10 @@
using System;
using System.Collections.Generic;
using System.Security;
using System.Text;
namespace Server_Dashboard {
public interface IHavePassword {
SecureString SecurePassword { get; }
}
}

View File

@@ -0,0 +1,62 @@
using System;
using System.Collections.Generic;
using System.Security;
using System.Text;
using System.Windows.Input;
namespace Server_Dashboard {
class LoginViewModel : BaseViewModel {
private string username;
public string Username {
get { return username; }
set {
if (username != value)
username = value;
OnPropertyChanged(nameof(username));
}
}
private string errorText;
public string ErrorText {
get { return errorText; }
set {
if (errorText != value)
errorText = value;
OnPropertyChanged(nameof(errorText));
}
}
public LoginViewModel() {
LoginCommand = new RelayCommand(Login);
}
public ICommand LoginCommand { get; set; }
private void Login(object parameter) {
if (!String.IsNullOrWhiteSpace(Username) && !String.IsNullOrWhiteSpace((parameter as IHavePassword).SecurePassword.Unsecure())) {
if (DatabaseHandler.CheckLogin(Username, (parameter as IHavePassword).SecurePassword.Unsecure())) {
Console.WriteLine();
} else {
ErrorText = "Username or password is wrong.";
return;
}
} else if (String.IsNullOrWhiteSpace(Username) && String.IsNullOrWhiteSpace((parameter as IHavePassword).SecurePassword.Unsecure())) {
ErrorText = "Please provide a username and password";
return;
}
if (String.IsNullOrWhiteSpace(Username)) {
ErrorText = "Username cannot be empty.";
return;
}
if (String.IsNullOrWhiteSpace((parameter as IHavePassword).SecurePassword.Unsecure())) {
ErrorText = "Password cannot be empty.";
return;
}
ErrorText = "";
}
}
}

View File

@@ -8,6 +8,7 @@
".NETCoreApp,Version=v3.1": {
"Server Dashboard/1.0.0": {
"dependencies": {
"Microsoft.Xaml.Behaviors.Wpf": "1.1.31",
"System.Data.SqlClient": "4.8.2"
},
"runtime": {
@@ -21,6 +22,14 @@
"System.Security.Principal.Windows": "4.7.0"
}
},
"Microsoft.Xaml.Behaviors.Wpf/1.1.31": {
"runtime": {
"lib/netcoreapp3.1/Microsoft.Xaml.Behaviors.dll": {
"assemblyVersion": "1.1.0.0",
"fileVersion": "1.1.31.10800"
}
}
},
"runtime.native.System.Data.SqlClient.sni/4.7.0": {
"dependencies": {
"runtime.win-arm64.runtime.native.System.Data.SqlClient.sni": "4.4.0",
@@ -111,6 +120,13 @@
"path": "microsoft.win32.registry/4.7.0",
"hashPath": "microsoft.win32.registry.4.7.0.nupkg.sha512"
},
"Microsoft.Xaml.Behaviors.Wpf/1.1.31": {
"type": "package",
"serviceable": true,
"sha512": "sha512-LZpuf82ACZWldmfMuv3CTUMDh3o0xo0uHUaybR5HgqVLDBJJ9RZLykplQ/bTJd0/VDt3EhD4iDgUgbdIUAM+Kg==",
"path": "microsoft.xaml.behaviors.wpf/1.1.31",
"hashPath": "microsoft.xaml.behaviors.wpf.1.1.31.nupkg.sha512"
},
"runtime.native.System.Data.SqlClient.sni/4.7.0": {
"type": "package",
"serviceable": true,

View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<connectionStrings>
<add name="ServerDashboardDB" connectionString="Server=localhost;Database=ServerDashboardDB;User Id=SA;Password=Me262HG3;"/>
</connectionStrings>
<startup>
<supportedRuntime version="v3.1.13" sku=".NETFramework,Version=v4.7.2" />
</startup>
</configuration>

View File

@@ -1,4 +1,4 @@
#pragma checksum "..\..\..\App.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "CFAEA69073E0A9617DE983A1C17F812E8D11C797"
#pragma checksum "..\..\..\App.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "74B190EC288932EF98E3D09F645AFA4D89DB749F"
//------------------------------------------------------------------------------
// <auto-generated>
// Dieser Code wurde von einem Tool generiert.
@@ -55,7 +55,7 @@ namespace Server_Dashboard {
_contentLoaded = true;
#line 5 "..\..\..\App.xaml"
this.StartupUri = new System.Uri("MainWindow.xaml", System.UriKind.Relative);
this.StartupUri = new System.Uri("LoginWindow.xaml", System.UriKind.Relative);
#line default
#line hidden

View File

@@ -1,4 +1,4 @@
#pragma checksum "..\..\..\App.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "CFAEA69073E0A9617DE983A1C17F812E8D11C797"
#pragma checksum "..\..\..\App.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "74B190EC288932EF98E3D09F645AFA4D89DB749F"
//------------------------------------------------------------------------------
// <auto-generated>
// Dieser Code wurde von einem Tool generiert.
@@ -55,7 +55,7 @@ namespace Server_Dashboard {
_contentLoaded = true;
#line 5 "..\..\..\App.xaml"
this.StartupUri = new System.Uri("MainWindow.xaml", System.UriKind.Relative);
this.StartupUri = new System.Uri("LoginWindow.xaml", System.UriKind.Relative);
#line default
#line hidden

View File

@@ -0,0 +1,62 @@
//------------------------------------------------------------------------------
// <auto-generated>
// Dieser Code wurde von einem Tool generiert.
// Laufzeitversion:4.0.30319.42000
//
// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
// der Code erneut generiert wird.
// </auto-generated>
//------------------------------------------------------------------------------
namespace XamlGeneratedNamespace {
/// <summary>
/// GeneratedInternalTypeHelper
/// </summary>
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "5.0.4.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
public sealed class GeneratedInternalTypeHelper : System.Windows.Markup.InternalTypeHelper {
/// <summary>
/// CreateInstance
/// </summary>
protected override object CreateInstance(System.Type type, System.Globalization.CultureInfo culture) {
return System.Activator.CreateInstance(type, ((System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.NonPublic)
| (System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.CreateInstance)), null, null, culture);
}
/// <summary>
/// GetPropertyValue
/// </summary>
protected override object GetPropertyValue(System.Reflection.PropertyInfo propertyInfo, object target, System.Globalization.CultureInfo culture) {
return propertyInfo.GetValue(target, System.Reflection.BindingFlags.Default, null, null, culture);
}
/// <summary>
/// SetPropertyValue
/// </summary>
protected override void SetPropertyValue(System.Reflection.PropertyInfo propertyInfo, object target, object value, System.Globalization.CultureInfo culture) {
propertyInfo.SetValue(target, value, System.Reflection.BindingFlags.Default, null, null, culture);
}
/// <summary>
/// CreateDelegate
/// </summary>
protected override System.Delegate CreateDelegate(System.Type delegateType, object target, string handler) {
return ((System.Delegate)(target.GetType().InvokeMember("_CreateDelegate", (System.Reflection.BindingFlags.InvokeMethod
| (System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance)), null, target, new object[] {
delegateType,
handler}, null)));
}
/// <summary>
/// AddEventHandler
/// </summary>
protected override void AddEventHandler(System.Reflection.EventInfo eventInfo, object target, System.Delegate handler) {
eventInfo.AddEventHandler(target, handler);
}
}
}

View File

@@ -0,0 +1,62 @@
//------------------------------------------------------------------------------
// <auto-generated>
// Dieser Code wurde von einem Tool generiert.
// Laufzeitversion:4.0.30319.42000
//
// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
// der Code erneut generiert wird.
// </auto-generated>
//------------------------------------------------------------------------------
namespace XamlGeneratedNamespace {
/// <summary>
/// GeneratedInternalTypeHelper
/// </summary>
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "5.0.4.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
public sealed class GeneratedInternalTypeHelper : System.Windows.Markup.InternalTypeHelper {
/// <summary>
/// CreateInstance
/// </summary>
protected override object CreateInstance(System.Type type, System.Globalization.CultureInfo culture) {
return System.Activator.CreateInstance(type, ((System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.NonPublic)
| (System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.CreateInstance)), null, null, culture);
}
/// <summary>
/// GetPropertyValue
/// </summary>
protected override object GetPropertyValue(System.Reflection.PropertyInfo propertyInfo, object target, System.Globalization.CultureInfo culture) {
return propertyInfo.GetValue(target, System.Reflection.BindingFlags.Default, null, null, culture);
}
/// <summary>
/// SetPropertyValue
/// </summary>
protected override void SetPropertyValue(System.Reflection.PropertyInfo propertyInfo, object target, object value, System.Globalization.CultureInfo culture) {
propertyInfo.SetValue(target, value, System.Reflection.BindingFlags.Default, null, null, culture);
}
/// <summary>
/// CreateDelegate
/// </summary>
protected override System.Delegate CreateDelegate(System.Type delegateType, object target, string handler) {
return ((System.Delegate)(target.GetType().InvokeMember("_CreateDelegate", (System.Reflection.BindingFlags.InvokeMethod
| (System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance)), null, target, new object[] {
delegateType,
handler}, null)));
}
/// <summary>
/// AddEventHandler
/// </summary>
protected override void AddEventHandler(System.Reflection.EventInfo eventInfo, object target, System.Delegate handler) {
eventInfo.AddEventHandler(target, handler);
}
}
}

View File

@@ -1,4 +1,4 @@
#pragma checksum "..\..\..\MainWindow.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "9936019F8F4F36AA14CB7E4E5EF102427D7DACAB"
#pragma checksum "..\..\..\LoginWindow.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "DF7FEA542AE21C1D71DCD21AA55E8BDD50DAC57A"
//------------------------------------------------------------------------------
// <auto-generated>
// Dieser Code wurde von einem Tool generiert.
@@ -9,6 +9,11 @@
// </auto-generated>
//------------------------------------------------------------------------------
using Microsoft.Xaml.Behaviors;
using Microsoft.Xaml.Behaviors.Core;
using Microsoft.Xaml.Behaviors.Input;
using Microsoft.Xaml.Behaviors.Layout;
using Microsoft.Xaml.Behaviors.Media;
using Server_Dashboard;
using System;
using System.Diagnostics;
@@ -37,14 +42,38 @@ namespace Server_Dashboard {
/// <summary>
/// MainWindow
/// LoginWindow
/// </summary>
public partial class MainWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector {
public partial class LoginWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector {
#line 74 "..\..\..\MainWindow.xaml"
#line 8 "..\..\..\LoginWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBlock LoginErrorText;
internal Server_Dashboard.LoginWindow Login;
#line default
#line hidden
#line 55 "..\..\..\LoginWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox UserName;
#line default
#line hidden
#line 66 "..\..\..\LoginWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBlock PasswordHint;
#line default
#line hidden
#line 67 "..\..\..\LoginWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.PasswordBox Password;
#line default
#line hidden
@@ -61,15 +90,22 @@ namespace Server_Dashboard {
return;
}
_contentLoaded = true;
System.Uri resourceLocater = new System.Uri("/Server Dashboard;component/mainwindow.xaml", System.UriKind.Relative);
System.Uri resourceLocater = new System.Uri("/Server Dashboard;component/loginwindow.xaml", System.UriKind.Relative);
#line 1 "..\..\..\MainWindow.xaml"
#line 1 "..\..\..\LoginWindow.xaml"
System.Windows.Application.LoadComponent(this, resourceLocater);
#line default
#line hidden
}
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "5.0.4.0")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal System.Delegate _CreateDelegate(System.Type delegateType, string handler) {
return System.Delegate.CreateDelegate(delegateType, this, handler);
}
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "5.0.4.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
@@ -80,7 +116,16 @@ namespace Server_Dashboard {
switch (connectionId)
{
case 1:
this.LoginErrorText = ((System.Windows.Controls.TextBlock)(target));
this.Login = ((Server_Dashboard.LoginWindow)(target));
return;
case 2:
this.UserName = ((System.Windows.Controls.TextBox)(target));
return;
case 3:
this.PasswordHint = ((System.Windows.Controls.TextBlock)(target));
return;
case 4:
this.Password = ((System.Windows.Controls.PasswordBox)(target));
return;
}
this._contentLoaded = true;

View File

@@ -0,0 +1,135 @@
#pragma checksum "..\..\..\LoginWindow.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "DF7FEA542AE21C1D71DCD21AA55E8BDD50DAC57A"
//------------------------------------------------------------------------------
// <auto-generated>
// Dieser Code wurde von einem Tool generiert.
// Laufzeitversion:4.0.30319.42000
//
// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
// der Code erneut generiert wird.
// </auto-generated>
//------------------------------------------------------------------------------
using Microsoft.Xaml.Behaviors;
using Microsoft.Xaml.Behaviors.Core;
using Microsoft.Xaml.Behaviors.Input;
using Microsoft.Xaml.Behaviors.Layout;
using Microsoft.Xaml.Behaviors.Media;
using Server_Dashboard;
using System;
using System.Diagnostics;
using System.Windows;
using System.Windows.Automation;
using System.Windows.Controls;
using System.Windows.Controls.Primitives;
using System.Windows.Controls.Ribbon;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Markup;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Media.Effects;
using System.Windows.Media.Imaging;
using System.Windows.Media.Media3D;
using System.Windows.Media.TextFormatting;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Windows.Shell;
namespace Server_Dashboard {
/// <summary>
/// LoginWindow
/// </summary>
public partial class LoginWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector {
#line 8 "..\..\..\LoginWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal Server_Dashboard.LoginWindow Login;
#line default
#line hidden
#line 55 "..\..\..\LoginWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox UserName;
#line default
#line hidden
#line 66 "..\..\..\LoginWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBlock PasswordHint;
#line default
#line hidden
#line 67 "..\..\..\LoginWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.PasswordBox Password;
#line default
#line hidden
private bool _contentLoaded;
/// <summary>
/// InitializeComponent
/// </summary>
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "5.0.4.0")]
public void InitializeComponent() {
if (_contentLoaded) {
return;
}
_contentLoaded = true;
System.Uri resourceLocater = new System.Uri("/Server Dashboard;component/loginwindow.xaml", System.UriKind.Relative);
#line 1 "..\..\..\LoginWindow.xaml"
System.Windows.Application.LoadComponent(this, resourceLocater);
#line default
#line hidden
}
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "5.0.4.0")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal System.Delegate _CreateDelegate(System.Type delegateType, string handler) {
return System.Delegate.CreateDelegate(delegateType, this, handler);
}
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "5.0.4.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
switch (connectionId)
{
case 1:
this.Login = ((Server_Dashboard.LoginWindow)(target));
return;
case 2:
this.UserName = ((System.Windows.Controls.TextBox)(target));
return;
case 3:
this.PasswordHint = ((System.Windows.Controls.TextBlock)(target));
return;
case 4:
this.Password = ((System.Windows.Controls.PasswordBox)(target));
return;
}
this._contentLoaded = true;
}
}
}

View File

@@ -1,5 +1,4 @@
// Updated by XamlIntelliSenseFileGenerator 01.04.2021 15:13:25
#pragma checksum "..\..\..\MainWindow.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "9936019F8F4F36AA14CB7E4E5EF102427D7DACAB"
#pragma checksum "..\..\..\MainWindow.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "CDEE2CA4F2AEFFC91F6C3FEBBD37081502AEA750"
//------------------------------------------------------------------------------
// <auto-generated>
// Dieser Code wurde von einem Tool generiert.
@@ -42,8 +41,29 @@ namespace Server_Dashboard {
/// </summary>
public partial class MainWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector {
#line default
#line hidden
#line 41 "..\..\..\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox UserName;
#line default
#line hidden
#line 52 "..\..\..\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBlock PasswordHint;
#line default
#line hidden
#line 53 "..\..\..\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.PasswordBox Password;
#line default
#line hidden
private bool _contentLoaded;
@@ -57,13 +77,13 @@ namespace Server_Dashboard {
return;
}
_contentLoaded = true;
System.Uri resourceLocater = new System.Uri("/Server Dashboard;component/mainwindow.xaml", System.UriKind.Relative);
System.Uri resourceLocater = new System.Uri("/Server Dashboard;V1.0.0.0;component/mainwindow.xaml", System.UriKind.Relative);
#line 1 "..\..\..\MainWindow.xaml"
#line 1 "..\..\..\MainWindow.xaml"
System.Windows.Application.LoadComponent(this, resourceLocater);
#line default
#line hidden
#line default
#line hidden
}
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
@@ -73,9 +93,38 @@ namespace Server_Dashboard {
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
switch (connectionId) {
switch (connectionId)
{
case 1:
this.LoginErrorText = ((System.Windows.Controls.TextBlock)(target));
#line 10 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Grid)(target)).MouseDown += new System.Windows.Input.MouseButtonEventHandler(this.DragWindow);
#line default
#line hidden
return;
case 2:
#line 25 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.CloseButton);
#line default
#line hidden
return;
case 3:
this.UserName = ((System.Windows.Controls.TextBox)(target));
return;
case 4:
this.PasswordHint = ((System.Windows.Controls.TextBlock)(target));
return;
case 5:
this.Password = ((System.Windows.Controls.PasswordBox)(target));
#line 53 "..\..\..\MainWindow.xaml"
this.Password.PasswordChanged += new System.Windows.RoutedEventHandler(this.Password_PasswordChanged);
#line default
#line hidden
return;
}
this._contentLoaded = true;

View File

@@ -1 +1 @@
6699e56d9f98fbf62ee36edf4ef1257f3833dc76
f1717d53be58eb9a59391431391201bfbf17cc09

View File

@@ -5,11 +5,9 @@ C:\Users\Crylia\Documents\Git\Server Dashboard\Server Dashboard\bin\Debug\netcor
C:\Users\Crylia\Documents\Git\Server Dashboard\Server Dashboard\bin\Debug\netcoreapp3.1\Server Dashboard.dll
C:\Users\Crylia\Documents\Git\Server Dashboard\Server Dashboard\bin\Debug\netcoreapp3.1\Server Dashboard.pdb
C:\Users\Crylia\Documents\Git\Server Dashboard\Server Dashboard\obj\Debug\netcoreapp3.1\Server Dashboard.csprojAssemblyReference.cache
C:\Users\Crylia\Documents\Git\Server Dashboard\Server Dashboard\obj\Debug\netcoreapp3.1\MainWindow.g.cs
C:\Users\Crylia\Documents\Git\Server Dashboard\Server Dashboard\obj\Debug\netcoreapp3.1\App.g.cs
C:\Users\Crylia\Documents\Git\Server Dashboard\Server Dashboard\obj\Debug\netcoreapp3.1\Server Dashboard_MarkupCompile.cache
C:\Users\Crylia\Documents\Git\Server Dashboard\Server Dashboard\obj\Debug\netcoreapp3.1\Server Dashboard_MarkupCompile.lref
C:\Users\Crylia\Documents\Git\Server Dashboard\Server Dashboard\obj\Debug\netcoreapp3.1\MainWindow.baml
C:\Users\Crylia\Documents\Git\Server Dashboard\Server Dashboard\obj\Debug\netcoreapp3.1\Server Dashboard.g.resources
C:\Users\Crylia\Documents\Git\Server Dashboard\Server Dashboard\obj\Debug\netcoreapp3.1\Server Dashboard.AssemblyInfoInputs.cache
C:\Users\Crylia\Documents\Git\Server Dashboard\Server Dashboard\obj\Debug\netcoreapp3.1\Server Dashboard.AssemblyInfo.cs
@@ -25,3 +23,8 @@ C:\Users\Crylia\Documents\Git\Server Dashboard\Server Dashboard\bin\Debug\netcor
C:\Users\Crylia\Documents\Git\Server Dashboard\Server Dashboard\bin\Debug\netcoreapp3.1\runtimes\win\lib\netcoreapp2.1\System.Data.SqlClient.dll
C:\Users\Crylia\Documents\Git\Server Dashboard\Server Dashboard\obj\Debug\netcoreapp3.1\App.baml
C:\Users\Crylia\Documents\Git\Server Dashboard\Server Dashboard\obj\Debug\netcoreapp3.1\Server Dashboard.csproj.CopyComplete
C:\Users\Crylia\Documents\Git\Server Dashboard\Server Dashboard\obj\Debug\netcoreapp3.1\LoginWindow.g.cs
C:\Users\Crylia\Documents\Git\Server Dashboard\Server Dashboard\obj\Debug\netcoreapp3.1\LoginWindow.baml
C:\Users\Crylia\Documents\Git\Server Dashboard\Server Dashboard\bin\Debug\netcoreapp3.1\Microsoft.Xaml.Behaviors.dll
C:\Users\Crylia\Documents\Git\Server Dashboard\Server Dashboard\obj\Debug\netcoreapp3.1\GeneratedInternalTypeHelper.g.cs
C:\Users\Crylia\Documents\Git\Server Dashboard\Server Dashboard\bin\Debug\netcoreapp3.1\Server Dashboard.dll.config

View File

@@ -33,6 +33,14 @@
}
}
},
"Microsoft.Xaml.Behaviors.Wpf/1.1.31": {
"runtime": {
"lib/netcoreapp3.1/Microsoft.Xaml.Behaviors.dll": {
"assemblyVersion": "1.1.0.0",
"fileVersion": "1.1.31.10800"
}
}
},
"runtime.native.System.Data.SqlClient.sni/4.7.0": {
"dependencies": {
"runtime.win-arm64.runtime.native.System.Data.SqlClient.sni": "4.4.0",
@@ -153,6 +161,13 @@
"path": "microsoft.win32.registry/4.7.0",
"hashPath": "microsoft.win32.registry.4.7.0.nupkg.sha512"
},
"Microsoft.Xaml.Behaviors.Wpf/1.1.31": {
"type": "package",
"serviceable": true,
"sha512": "sha512-LZpuf82ACZWldmfMuv3CTUMDh3o0xo0uHUaybR5HgqVLDBJJ9RZLykplQ/bTJd0/VDt3EhD4iDgUgbdIUAM+Kg==",
"path": "microsoft.xaml.behaviors.wpf/1.1.31",
"hashPath": "microsoft.xaml.behaviors.wpf.1.1.31.nupkg.sha512"
},
"runtime.native.System.Data.SqlClient.sni/4.7.0": {
"type": "package",
"serviceable": true,

View File

@@ -10,11 +10,11 @@ none
false
TRACE;DEBUG;NETCOREAPP;NETCOREAPP3_1;
C:\Users\Crylia\Documents\Git\Server Dashboard\Server Dashboard\App.xaml
11407045341
1-1623698816
10-2015762917
193-833620683
MainWindow.xaml;
151761447773
194-1159729825
LoginWindow.xaml;
False

View File

@@ -10,11 +10,11 @@ none
false
TRACE;DEBUG;NETCOREAPP;NETCOREAPP3_1;
C:\Users\Crylia\Documents\Git\Server Dashboard\Server Dashboard\App.xaml
11407045341
1-1623698816
12679877109
193-833620683
MainWindow.xaml;
17162120503
194-1159729825
LoginWindow.xaml;
False

View File

@@ -1,4 +1,4 @@
FC:\Users\Crylia\Documents\Git\Server Dashboard\Server Dashboard\App.xaml;;
FC:\Users\Crylia\Documents\Git\Server Dashboard\Server Dashboard\MainWindow.xaml;;
FC:\Users\Crylia\Documents\Git\Server Dashboard\Server Dashboard\LoginWindow.xaml;;

View File

@@ -44,6 +44,10 @@
"netcoreapp3.1": {
"targetAlias": "netcoreapp3.1",
"dependencies": {
"Microsoft.Xaml.Behaviors.Wpf": {
"target": "Package",
"version": "[1.1.31, )"
},
"System.Data.SqlClient": {
"target": "Package",
"version": "[4.8.2, )"

View File

@@ -16,4 +16,7 @@
<PropertyGroup>
<MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
</PropertyGroup>
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<PkgMicrosoft_Xaml_Behaviors_Wpf Condition=" '$(PkgMicrosoft_Xaml_Behaviors_Wpf)' == '' ">C:\Users\Crylia\.nuget\packages\microsoft.xaml.behaviors.wpf\1.1.31</PkgMicrosoft_Xaml_Behaviors_Wpf>
</PropertyGroup>
</Project>

View File

@@ -34,6 +34,18 @@
}
}
},
"Microsoft.Xaml.Behaviors.Wpf/1.1.31": {
"type": "package",
"compile": {
"lib/netcoreapp3.1/Microsoft.Xaml.Behaviors.dll": {}
},
"runtime": {
"lib/netcoreapp3.1/Microsoft.Xaml.Behaviors.dll": {}
},
"frameworkReferences": [
"Microsoft.WindowsDesktop.App.WPF"
]
},
"runtime.native.System.Data.SqlClient.sni/4.7.0": {
"type": "package",
"dependencies": {
@@ -198,6 +210,31 @@
"version.txt"
]
},
"Microsoft.Xaml.Behaviors.Wpf/1.1.31": {
"sha512": "LZpuf82ACZWldmfMuv3CTUMDh3o0xo0uHUaybR5HgqVLDBJJ9RZLykplQ/bTJd0/VDt3EhD4iDgUgbdIUAM+Kg==",
"type": "package",
"path": "microsoft.xaml.behaviors.wpf/1.1.31",
"hasTools": true,
"files": [
".nupkg.metadata",
".signature.p7s",
"lib/net45/Design/Microsoft.Xaml.Behaviors.Design.dll",
"lib/net45/Microsoft.Xaml.Behaviors.dll",
"lib/net45/Microsoft.Xaml.Behaviors.pdb",
"lib/net45/Microsoft.Xaml.Behaviors.xml",
"lib/net5.0-windows7.0/Design/Microsoft.Xaml.Behaviors.DesignTools.dll",
"lib/net5.0-windows7.0/Microsoft.Xaml.Behaviors.dll",
"lib/net5.0-windows7.0/Microsoft.Xaml.Behaviors.pdb",
"lib/net5.0-windows7.0/Microsoft.Xaml.Behaviors.xml",
"lib/netcoreapp3.1/Design/Microsoft.Xaml.Behaviors.DesignTools.dll",
"lib/netcoreapp3.1/Microsoft.Xaml.Behaviors.dll",
"lib/netcoreapp3.1/Microsoft.Xaml.Behaviors.pdb",
"lib/netcoreapp3.1/Microsoft.Xaml.Behaviors.xml",
"microsoft.xaml.behaviors.wpf.1.1.31.nupkg.sha512",
"microsoft.xaml.behaviors.wpf.nuspec",
"tools/Install.ps1"
]
},
"runtime.native.System.Data.SqlClient.sni/4.7.0": {
"sha512": "9kyFSIdN3T0qjDQ2R0HRXYIhS3l5psBzQi6qqhdLz+SzFyEy4sVxNOke+yyYv8Cu8rPER12c3RDjLT8wF3WBYQ==",
"type": "package",
@@ -450,6 +487,7 @@
},
"projectFileDependencyGroups": {
".NETCoreApp,Version=v3.1": [
"Microsoft.Xaml.Behaviors.Wpf >= 1.1.31",
"System.Data.SqlClient >= 4.8.2"
]
},
@@ -497,6 +535,10 @@
"netcoreapp3.1": {
"targetAlias": "netcoreapp3.1",
"dependencies": {
"Microsoft.Xaml.Behaviors.Wpf": {
"target": "Package",
"version": "[1.1.31, )"
},
"System.Data.SqlClient": {
"target": "Package",
"version": "[4.8.2, )"

View File

@@ -1,11 +1,12 @@
{
"version": 2,
"dgSpecHash": "Ys8lDS/3T/6A/sckiwSOsrsN0Lv8FKN7haYCcS3mkpDpqXsorYgNFm3xwecHcRSPPhR8+xRgpeJ1c3ShYikNbg==",
"dgSpecHash": "CYGOe4mBfiMKQ4BaJySOksOWUEXHi442SEA4/Rkjp0Q8nuhKaogz392dgxLCqtFUcIOrmTAgtPjbLUjOWSV4Og==",
"success": true,
"projectFilePath": "C:\\Users\\Crylia\\Documents\\Git\\Server Dashboard\\Server Dashboard\\Server Dashboard.csproj",
"expectedPackageFiles": [
"C:\\Users\\Crylia\\.nuget\\packages\\microsoft.netcore.platforms\\3.1.0\\microsoft.netcore.platforms.3.1.0.nupkg.sha512",
"C:\\Users\\Crylia\\.nuget\\packages\\microsoft.win32.registry\\4.7.0\\microsoft.win32.registry.4.7.0.nupkg.sha512",
"C:\\Users\\Crylia\\.nuget\\packages\\microsoft.xaml.behaviors.wpf\\1.1.31\\microsoft.xaml.behaviors.wpf.1.1.31.nupkg.sha512",
"C:\\Users\\Crylia\\.nuget\\packages\\runtime.native.system.data.sqlclient.sni\\4.7.0\\runtime.native.system.data.sqlclient.sni.4.7.0.nupkg.sha512",
"C:\\Users\\Crylia\\.nuget\\packages\\runtime.win-arm64.runtime.native.system.data.sqlclient.sni\\4.4.0\\runtime.win-arm64.runtime.native.system.data.sqlclient.sni.4.4.0.nupkg.sha512",
"C:\\Users\\Crylia\\.nuget\\packages\\runtime.win-x64.runtime.native.system.data.sqlclient.sni\\4.4.0\\runtime.win-x64.runtime.native.system.data.sqlclient.sni.4.4.0.nupkg.sha512",