Fertig mit der UI, code dahinter muss implementiert werde (nach datenbank fertig herstellung)

This commit is contained in:
younes elhaddoury
2026-01-29 14:15:52 +01:00
parent 53a1e036e1
commit deaa68880a
9 changed files with 465 additions and 237 deletions

View File

@@ -4,108 +4,168 @@
xmlns:iconPacks="http://metro.mahapps.com/winfx/xaml/iconpacks" xmlns:iconPacks="http://metro.mahapps.com/winfx/xaml/iconpacks"
Title="MeineBuchungenPage"> Title="MeineBuchungenPage">
<Grid Margin="20"> <Grid>
<Grid.RowDefinitions> <Grid.RowDefinitions>
<RowDefinition Height="Auto"/> <RowDefinition Height="Auto"/>
<RowDefinition Height="*"/> <RowDefinition Height="*"/>
</Grid.RowDefinitions> </Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<StackPanel Grid.Row="0" <ColumnDefinition Width="180"/>
Orientation="Horizontal" <ColumnDefinition Width="*"/>
VerticalAlignment="Center" </Grid.ColumnDefinitions>
Margin="0,0,0,15">
<iconPacks:PackIconMaterial Kind="Airplane" <Border Grid.Row="0"
Width="28" Grid.ColumnSpan="2"
Height="28" Background="#FF1E88E5"
Margin="0,0,10,0"/> Padding="15">
<StackPanel> <StackPanel Orientation="Horizontal"
<TextBlock Text="Meine Buchungen" VerticalAlignment="Center">
FontSize="22" <Ellipse Width="36" Height="36" Fill="White" Margin="0,0,10,0"/>
FontWeight="Bold"/> <StackPanel>
<TextBlock Text="Übersicht über Ihre gebuchten Flüge" <TextBlock Text="Sky Team Airlines"
FontSize="12" FontSize="20"
Foreground="Gray"/> FontWeight="Bold"
Foreground="White"/>
<TextBlock Text="Sichere und komfortable Flüge weltweit"
FontSize="12"
Foreground="White"/>
</StackPanel>
</StackPanel> </StackPanel>
</Border>
<StackPanel Grid.Row="1"
Grid.Column="0"
Background="#FFE3F2FD"
Orientation="Vertical">
<Button x:Name="HomeButton"
Height="50"
Margin="5"
Click="HomeButton_Click">
<StackPanel Orientation="Horizontal" VerticalAlignment="Center">
<iconPacks:PackIconMaterial Kind="Home" Width="20" Height="20" Margin="0,0,10,0"/>
<TextBlock Text="Home"/>
</StackPanel>
</Button>
<Button x:Name="BookingsButton"
Height="50"
Margin="5"
Click="BookingsButton_Click"
Background="#FFBBDEFB">
<StackPanel Orientation="Horizontal" VerticalAlignment="Center">
<iconPacks:PackIconMaterial Kind="Airplane" Width="20" Height="20" Margin="0,0,10,0"/>
<TextBlock Text="Meine Buchungen"/>
</StackPanel>
</Button>
<Button x:Name="SettingsButton"
Height="50"
Margin="5"
Click="SettingsButton_Click">
<StackPanel Orientation="Horizontal" VerticalAlignment="Center">
<iconPacks:PackIconMaterial Kind="Cog" Width="20" Height="20" Margin="0,0,10,0"/>
<TextBlock Text="Einstellungen"/>
</StackPanel>
</Button>
<Button x:Name="LogoutButton"
Height="50"
Margin="5"
Background="#FFEBEB"
BorderBrush="#FFB71C1C"
Foreground="#D32F2F"
FontWeight="Bold"
Click="LogoutButton_Click">
<StackPanel Orientation="Horizontal" VerticalAlignment="Center">
<iconPacks:PackIconMaterial Kind="Logout" Width="20" Height="20" Margin="0,0,10,0"/>
<TextBlock Text="Abmelden"/>
</StackPanel>
</Button>
</StackPanel> </StackPanel>
<Grid Grid.Row="1" Grid.Column="1" Margin="30">
<Grid Grid.Row="1">
<Grid.RowDefinitions> <Grid.RowDefinitions>
<RowDefinition Height="Auto"/> <RowDefinition Height="Auto"/>
<RowDefinition Height="*"/> <RowDefinition Height="*"/>
</Grid.RowDefinitions> </Grid.RowDefinitions>
<StackPanel Grid.Row="0"
<Grid Grid.Row="0" Orientation="Horizontal"
Margin="0,0,0,10"> VerticalAlignment="Center"
<Grid.ColumnDefinitions> Margin="0,0,0,20">
<ColumnDefinition Width="Auto"/> <iconPacks:PackIconMaterial Kind="Airplane" Width="28" Height="28" Margin="0,0,10,0"/>
<ColumnDefinition Width="200"/> <StackPanel>
<ColumnDefinition Width="Auto"/> <TextBlock Text="Meine Buchungen"
<ColumnDefinition Width="200"/> FontSize="24"
<ColumnDefinition Width="Auto"/> FontWeight="Bold"/>
</Grid.ColumnDefinitions> <TextBlock Text="Übersicht über Ihre gebuchten Flüge"
FontSize="14"
Foreground="#666"/>
</StackPanel>
</StackPanel>
<Label Content="Von:" <Grid Grid.Row="1">
Grid.Column="0" <Grid.RowDefinitions>
VerticalAlignment="Center" <RowDefinition Height="Auto"/>
Margin="0,0,5,0"/> <RowDefinition Height="*"/>
<TextBox x:Name="FromFilterTextBox" </Grid.RowDefinitions>
Grid.Column="1"
Margin="0,0,15,0"/>
<Label Content="Nach:" <Grid Grid.Row="0" Margin="0,0,0,20">
Grid.Column="2" <Grid.ColumnDefinitions>
VerticalAlignment="Center" <ColumnDefinition Width="Auto"/>
Margin="0,0,5,0"/> <ColumnDefinition Width="200"/>
<TextBox x:Name="ToFilterTextBox" <ColumnDefinition Width="Auto"/>
Grid.Column="3" <ColumnDefinition Width="200"/>
Margin="0,0,15,0"/> <ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Label Content="Von:" Grid.Column="0" VerticalAlignment="Center" Margin="0,0,8,0"/>
<TextBox x:Name="FromFilterTextBox" Grid.Column="1" Height="36" Margin="0,0,12,0"/>
<Label Content="Nach:" Grid.Column="2" VerticalAlignment="Center" Margin="0,0,8,0"/>
<TextBox x:Name="ToFilterTextBox" Grid.Column="3" Height="36" Margin="0,0,12,0"/>
<Button x:Name="SearchBookingsButton"
Grid.Column="4"
Width="100"
Height="36"
Margin="0,0,0,0"
HorizontalAlignment="Right"
Click="SearchBookingsButton_Click">
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center">
<iconPacks:PackIconMaterial Kind="Magnify" Width="18" Height="18" Margin="0,0,6,0"/>
<TextBlock Text="Suchen"/>
</StackPanel>
</Button>
</Grid>
<DataGrid x:Name="BookingsDataGrid"
Grid.Row="1"
AutoGenerateColumns="False"
IsReadOnly="True"
CanUserAddRows="False"
GridLinesVisibility="Horizontal"
HeadersVisibility="Column">
<DataGrid.Columns>
<DataGridTextColumn Header="Buchungsnummer" Width="120" Binding="{Binding BookingNumber}"/>
<DataGridTextColumn Header="Von" Width="80" Binding="{Binding From}"/>
<DataGridTextColumn Header="Nach" Width="80" Binding="{Binding To}"/>
<DataGridTextColumn Header="Flugzeug" Width="100" Binding="{Binding Flugzeug}"/>
<DataGridTextColumn Header="Pilot" Width="100" Binding="{Binding Pilots}"/>
<DataGridTextColumn Header="Abflug" Width="140" Binding="{Binding DepartureTime}"/>
<DataGridTextColumn Header="Ankunft" Width="140" Binding="{Binding ArrivalTime}"/>
<DataGridTextColumn Header="Status" Width="100" Binding="{Binding Status}"/>
</DataGrid.Columns>
</DataGrid>
<Button x:Name="SearchBookingsButton"
Grid.Column="4"
Height="28"
Padding="10,0"
Click="SearchBookingsButton_Click">
<StackPanel Orientation="Horizontal">
<iconPacks:PackIconMaterial Kind="Magnify"
Width="18"
Height="18"
Margin="0,0,5,0"/>
<TextBlock Text="Suchen"/>
</StackPanel>
</Button>
</Grid> </Grid>
<DataGrid x:Name="BookingsDataGrid"
Grid.Row="1"
AutoGenerateColumns="False"
IsReadOnly="True"
CanUserAddRows="False">
<DataGrid.Columns>
<DataGridTextColumn Header="Buchungsnummer"
Width="*"/>
<DataGridTextColumn Header="Von"
Width="*"/>
<DataGridTextColumn Header="Nach"
Width="*"/>
<DataGridTextColumn Header="Abflug"
Width="*"/>
<DataGridTextColumn Header="Ankunft"
Width="*"/>
<DataGridTextColumn Header="Status"
Width="*"/>
</DataGrid.Columns>
</DataGrid>
</Grid> </Grid>
</Grid> </Grid>

View File

@@ -30,5 +30,40 @@ namespace SkyTeam
MessageBox.Show($"Suche Flüge von {from} nach {to}", "Suche", MessageBoxButton.OK); MessageBox.Show($"Suche Flüge von {from} nach {to}", "Suche", MessageBoxButton.OK);
} }
private void HomeButton_Click(object sender, RoutedEventArgs e)
{
((MainWindow)Application.Current.MainWindow).MainFrame.Navigate(new NavigationPage());
}
private void BookingsButton_Click(object sender, RoutedEventArgs e)
{
((MainWindow)Application.Current.MainWindow).MainFrame.Navigate(new MeineBuchungenPage());
}
private void SettingsButton_Click(object sender, RoutedEventArgs e)
{
((MainWindow)Application.Current.MainWindow).MainFrame.Navigate(new SettingsPage());
}
private void BookFlightButton_Click(object sender, RoutedEventArgs e)
{
((MainWindow)Application.Current.MainWindow).MainFrame.Navigate(new MeineBuchungenPage());
}
private void LogoutButton_Click(object sender, RoutedEventArgs e)
{
var result = MessageBox.Show(
"Möchten Sie sich wirklich abmelden?",
"Abmelden",
MessageBoxButton.YesNo,
MessageBoxImage.Question);
if (result == MessageBoxResult.Yes)
{
((MainWindow)Application.Current.MainWindow).MainFrame.Navigate(new LogInPage());
}
}
} }
} }

View File

@@ -13,22 +13,22 @@ namespace SkyTeam
private void HomeButton_Click(object sender, RoutedEventArgs e) private void HomeButton_Click(object sender, RoutedEventArgs e)
{ {
((MainWindow)Application.Current.MainWindow).MainFrame.Navigate(new NavigationPage());
} }
private void BookingsButton_Click(object sender, RoutedEventArgs e) private void BookingsButton_Click(object sender, RoutedEventArgs e)
{ {
((MainWindow)Application.Current.MainWindow).MainFrame.Navigate(new MeineBuchungenPage());
} }
private void SettingsButton_Click(object sender, RoutedEventArgs e) private void SettingsButton_Click(object sender, RoutedEventArgs e)
{ {
((MainWindow)Application.Current.MainWindow).MainFrame.Navigate(new SettingsPage());
} }
private void BookFlightButton_Click(object sender, RoutedEventArgs e) private void BookFlightButton_Click(object sender, RoutedEventArgs e)
{ {
((MainWindow)Application.Current.MainWindow).MainFrame.Navigate(new MeineBuchungenPage());
} }
private void LogoutButton_Click(object sender, RoutedEventArgs e) private void LogoutButton_Click(object sender, RoutedEventArgs e)
{ {
@@ -37,8 +37,13 @@ namespace SkyTeam
"Abmelden", "Abmelden",
MessageBoxButton.YesNo, MessageBoxButton.YesNo,
MessageBoxImage.Question); MessageBoxImage.Question);
if (result == MessageBoxResult.Yes)
{
((MainWindow)Application.Current.MainWindow).MainFrame.Navigate(new LogInPage());
}
} }
} }
} }

View File

@@ -4,84 +4,111 @@
xmlns:iconPacks="http://metro.mahapps.com/winfx/xaml/iconpacks" xmlns:iconPacks="http://metro.mahapps.com/winfx/xaml/iconpacks"
Title="LogInPage"> Title="LogInPage">
<Grid Margin="20"> <Grid Margin="40,20">
<Grid.RowDefinitions> <Grid.RowDefinitions>
<RowDefinition Height="Auto"/> <RowDefinition Height="Auto"/>
<RowDefinition Height="*"/> <RowDefinition Height="*"/>
</Grid.RowDefinitions> </Grid.RowDefinitions>
<!-- Header -->
<StackPanel Grid.Row="0" <StackPanel Grid.Row="0"
Orientation="Horizontal" Orientation="Horizontal"
VerticalAlignment="Center" VerticalAlignment="Center"
HorizontalAlignment="Center" HorizontalAlignment="Center"
Margin="0,0,0,30"> Margin="0,0,0,50">
<iconPacks:PackIconMaterial Kind="Account" <iconPacks:PackIconMaterial Kind="Account"
Width="28" Width="36"
Height="28" Height="36"
Margin="0,0,10,0"/> Margin="0,0,15,0"/>
<StackPanel> <StackPanel>
<TextBlock Text="Sky Team" <TextBlock Text="Sky Team"
FontSize="28" FontSize="36"
FontWeight="Bold"/> FontWeight="Bold"/>
<TextBlock Text="Melden Sie sich an um zu starten" <TextBlock Text="Melden Sie sich an um zu starten"
FontSize="12" FontSize="14"
Foreground="Gray"/> Foreground="#666"
Margin="0,5,0,0"/>
</StackPanel> </StackPanel>
</StackPanel> </StackPanel>
<!-- Form --> <!-- Form Container -->
<Grid Grid.Row="1" <Border Grid.Row="1"
VerticalAlignment="Center" Background="White"
HorizontalAlignment="Center"> CornerRadius="16"
Padding="50"
BorderBrush="#E0E0E0"
BorderThickness="1"
VerticalAlignment="Center"
HorizontalAlignment="Center">
<Grid>
<Grid.RowDefinitions> <Grid.RowDefinitions>
<RowDefinition Height="Auto"/> <RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/> <RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/> <RowDefinition Height="24"/>
</Grid.RowDefinitions> <RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="40"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/> <ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="200"/> <ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<Label Content="Benutzername:" <Label Content="Benutzername:"
Grid.Row="0" Grid.Row="0" Grid.Column="0"
Grid.Column="0" VerticalAlignment="Center"
Margin="0,0,10,10"/> Margin="0,0,12,8"
FontSize="14"
FontWeight="SemiBold"/>
<TextBox x:Name="BenutzernameTextBox"
Grid.Row="1" Grid.ColumnSpan="2"
Height="45"
FontSize="14"
Margin="0,0,0,0"/>
<TextBox x:Name="BenutzernameTextBox" <Label Content="Passwort:"
Grid.Row="0" Grid.Row="3" Grid.Column="0"
Grid.Column="1" VerticalAlignment="Center"
Margin="0,0,0,10"/> Margin="0,0,12,8"
FontSize="14"
FontWeight="SemiBold"/>
<PasswordBox x:Name="PasswortTextBox"
Grid.Row="4" Grid.ColumnSpan="2"
Height="45"
FontSize="14"
Margin="0,0,0,0"/>
<Label Content="Passwort:" <StackPanel Grid.Row="6"
Grid.Row="1" Grid.ColumnSpan="2"
Grid.Column="0" Orientation="Horizontal"
Margin="0,0,10,20"/> HorizontalAlignment="Center"
Margin="0,20,0,0">
<Button Content="Login"
Width="140"
Height="48"
Margin="0,0,20,0"
Background="#FF1E88E5"
Foreground="White"
FontSize="15"
FontWeight="Bold"
Click="LogInButton_Click"/>
<Button Content="Registrieren"
Width="140"
Height="48"
Background="Transparent"
BorderBrush="#DDD"
BorderThickness="1"
Foreground="#666"
FontSize="15"
FontWeight="SemiBold"
Click="anmeldungsButton_Click"/>
</StackPanel>
<PasswordBox x:Name="PasswortTextBox" </Grid>
Grid.Row="2" </Border>
Grid.ColumnSpan="2"
Margin="0,0,0,20"/>
<!-- Buttons -->
<StackPanel Grid.Row="3"
Grid.ColumnSpan="2"
Orientation="Horizontal"
HorizontalAlignment="Center">
<Button Content="Login"
Width="110"
Margin="0,0,20,0"
Click="LogInButton"/>
<Button Content="Registrieren"
Width="110"
Click="anmeldungsButton"/>
</StackPanel>
</Grid>
</Grid> </Grid>
</Page> </Page>

View File

@@ -27,15 +27,19 @@ namespace SkyTeam
private void anmeldungsButton(object sender, RoutedEventArgs e)
private void anmeldungsButton_Click(object sender, RoutedEventArgs e)
{ {
((MainWindow)Application.Current.MainWindow).MainFrame.Navigate(new RegistrationPage()); ((MainWindow)Application.Current.MainWindow).MainFrame.Navigate(new RegistrationPage());
} }
private void LogInButton(object sender, RoutedEventArgs e) private void LogInButton_Click(object sender, RoutedEventArgs e)
{ {
MessageBox.Show("Anmeldung erfolgreich!"); ((MainWindow)Application.Current.MainWindow).MainFrame.Navigate(new NavigationPage());
} }
} }

View File

@@ -11,7 +11,6 @@
<RowDefinition Height="*"/> <RowDefinition Height="*"/>
</Grid.RowDefinitions> </Grid.RowDefinitions>
<!-- Header -->
<StackPanel Grid.Row="0" <StackPanel Grid.Row="0"
Orientation="Horizontal" Orientation="Horizontal"
VerticalAlignment="Center" VerticalAlignment="Center"
@@ -82,7 +81,6 @@
<Label Content="Passwort:" Grid.Row="6" Grid.Column="0" VerticalAlignment="Center" Margin="0,0,12,0"/> <Label Content="Passwort:" Grid.Row="6" Grid.Column="0" VerticalAlignment="Center" Margin="0,0,12,0"/>
<PasswordBox x:Name="PasswordBox" Grid.Row="6" VerticalAlignment="Top" Margin="1,4,0,0" Height="21" Grid.Column="1"/> <PasswordBox x:Name="PasswordBox" Grid.Row="6" VerticalAlignment="Top" Margin="1,4,0,0" Height="21" Grid.Column="1"/>
<!-- Buttons - FORCED DOWN with extra rows -->
<StackPanel Grid.Row="9" <StackPanel Grid.Row="9"
Grid.ColumnSpan="2" Grid.ColumnSpan="2"
Orientation="Horizontal" Orientation="Horizontal"

View File

@@ -37,6 +37,7 @@ namespace SkyTeam
private void CancelButton_Click(object sender, RoutedEventArgs e) private void CancelButton_Click(object sender, RoutedEventArgs e)
{ {
((MainWindow)Application.Current.MainWindow).MainFrame.Navigate(new LogInPage());
} }
} }

View File

@@ -4,114 +4,177 @@
xmlns:iconPacks="http://metro.mahapps.com/winfx/xaml/iconpacks" xmlns:iconPacks="http://metro.mahapps.com/winfx/xaml/iconpacks"
Title="SettingsPage"> Title="SettingsPage">
<Grid x:Name="RootGrid" <Grid>
Margin="20"
Background="White">
<Grid.RowDefinitions> <Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/> <RowDefinition Height="Auto"/>
<RowDefinition Height="*"/> <RowDefinition Height="*"/>
</Grid.RowDefinitions> </Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<StackPanel Grid.Row="0" <ColumnDefinition Width="180"/>
Orientation="Horizontal" <ColumnDefinition Width="*"/>
VerticalAlignment="Center" </Grid.ColumnDefinitions>
Margin="0,0,0,15">
<iconPacks:PackIconMaterial Kind="Cog"
Width="28"
Height="28"
Margin="0,0,10,0"/>
<StackPanel>
<TextBlock Text="Einstellungen"
FontSize="22"
FontWeight="Bold"
Foreground="Black"/>
<TextBlock Text="Passen Sie Ihr Sky Team Erlebnis an"
FontSize="12"
Foreground="Gray"/>
</StackPanel>
</StackPanel>
<Border Grid.Row="0"
<Border Grid.Row="1" Grid.ColumnSpan="2"
Padding="10" Background="#FF1E88E5"
Margin="0,0,0,15" Padding="15">
BorderBrush="#DDD"
BorderThickness="1"
CornerRadius="4">
<StackPanel Orientation="Horizontal" <StackPanel Orientation="Horizontal"
VerticalAlignment="Center"> VerticalAlignment="Center">
<iconPacks:PackIconMaterial Kind="WeatherNight" <Ellipse Width="36" Height="36" Fill="White" Margin="0,0,10,0"/>
Width="22"
Height="22"
Margin="0,0,10,0"/>
<StackPanel> <StackPanel>
<TextBlock Text="Dark Mode" <TextBlock Text="Sky Team Airlines"
FontSize="14" FontSize="20"
FontWeight="Bold" FontWeight="Bold"
Foreground="Black"/> Foreground="White"/>
<TextBlock Text="Aktivieren Sie den dunklen Modus für die Anwendung." <TextBlock Text="Sichere und komfortable Flüge weltweit"
FontSize="12" FontSize="12"
Foreground="Gray"/> Foreground="White"/>
</StackPanel> </StackPanel>
<ToggleButton x:Name="DarkModeToggle"
Width="80"
Height="26"
Margin="20,0,0,0"
HorizontalAlignment="Right"
VerticalAlignment="Center"
Content="Aus"
Checked="DarkModeToggle_Checked"
Unchecked="DarkModeToggle_Unchecked"/>
</StackPanel> </StackPanel>
</Border> </Border>
<StackPanel Grid.Row="1"
<Border Grid.Row="2" Grid.Column="0"
Padding="10" Background="#FFE3F2FD"
BorderBrush="#FFB71C1C" Orientation="Vertical">
BorderThickness="1"
CornerRadius="4"> <Button x:Name="HomeButton"
<StackPanel> Height="50"
<StackPanel Orientation="Horizontal" Margin="5"
Margin="0,0,0,8"> Click="HomeButton_Click">
<iconPacks:PackIconMaterial Kind="AlertCircle" <StackPanel Orientation="Horizontal" VerticalAlignment="Center">
Width="22" <iconPacks:PackIconMaterial Kind="Home" Width="20" Height="20" Margin="0,0,10,0"/>
Height="22" <TextBlock Text="Home"/>
Foreground="#FFB71C1C"
Margin="0,0,10,0"/>
<TextBlock Text="Konto löschen"
FontSize="14"
FontWeight="Bold"
Foreground="#FFB71C1C"/>
</StackPanel> </StackPanel>
</Button>
<TextBlock Text="Achtung: Diese Aktion kann nicht rückgängig gemacht werden." <Button x:Name="BookingsButton"
FontSize="12" Height="50"
Foreground="Gray" Margin="5"
Margin="0,0,0,8"/> Click="BookingsButton_Click">
<StackPanel Orientation="Horizontal" VerticalAlignment="Center">
<iconPacks:PackIconMaterial Kind="Airplane" Width="20" Height="20" Margin="0,0,10,0"/>
<TextBlock Text="Meine Buchungen"/>
</StackPanel>
</Button>
<Button x:Name="DeleteAccountButton" <Button x:Name="SettingsButton"
Width="160" Height="50"
Height="32" Margin="5"
HorizontalAlignment="Left" Click="SettingsButton_Click"
Background="#FFB71C1C" Background="#FFBBDEFB">
Foreground="White" <StackPanel Orientation="Horizontal" VerticalAlignment="Center">
Click="DeleteAccountButton_Click"> <iconPacks:PackIconMaterial Kind="Cog" Width="20" Height="20" Margin="0,0,10,0"/>
<StackPanel Orientation="Horizontal" <TextBlock Text="Einstellungen"/>
HorizontalAlignment="Center"> </StackPanel>
<iconPacks:PackIconMaterial Kind="AccountRemove" </Button>
Width="18"
Height="18" <Button x:Name="LogoutButton"
Margin="0,0,6,0"/> Height="50"
<TextBlock Text="Konto löschen"/> Margin="5"
Background="#FFEBEB"
BorderBrush="#FFB71C1C"
Foreground="#D32F2F"
FontWeight="Bold"
Click="LogoutButton_Click">
<StackPanel Orientation="Horizontal" VerticalAlignment="Center">
<iconPacks:PackIconMaterial Kind="Logout" Width="20" Height="20" Margin="0,0,10,0"/>
<TextBlock Text="Abmelden"/>
</StackPanel>
</Button>
</StackPanel>
<Grid Grid.Row="1" Grid.Column="1" Margin="30">
<StackPanel Orientation="Horizontal"
VerticalAlignment="Center"
Margin="0,0,0,25">
<iconPacks:PackIconMaterial Kind="Cog" Width="32" Height="32" Margin="0,0,12,0"/>
<StackPanel>
<TextBlock Text="Einstellungen"
FontSize="28"
FontWeight="Bold"/>
<TextBlock Text="Passen Sie Ihr Sky Team Erlebnis an"
FontSize="16"
Foreground="#666"/>
</StackPanel>
</StackPanel>
<Border Background="White"
CornerRadius="12"
Padding="30"
BorderBrush="#E0E0E0"
BorderThickness="1"
Margin="0,0,0,25"
VerticalAlignment="Top">
<StackPanel Orientation="Horizontal" VerticalAlignment="Center">
<iconPacks:PackIconMaterial Kind="WeatherNight" Width="28" Height="28" Margin="0,0,15,0"/>
<StackPanel VerticalAlignment="Center">
<TextBlock Text="Dark Mode"
FontSize="18"
FontWeight="Bold"/>
<TextBlock Text="Aktivieren Sie den dunklen Modus für die Anwendung."
FontSize="14"
Foreground="#666"
Margin="0,4,0,0"/>
</StackPanel> </StackPanel>
</Button> <ToggleButton x:Name="DarkModeToggle"
</StackPanel> Width="90"
</Border> Height="36"
Margin="30,0,0,0"
HorizontalAlignment="Right"
VerticalAlignment="Center"
Background="#F5F5F5"
BorderBrush="#DDD"
Content="Aus"
FontSize="14"
FontWeight="SemiBold"
Checked="DarkModeToggle_Checked"
Unchecked="DarkModeToggle_Unchecked"/>
</StackPanel>
</Border>
<Border Background="#FEF2F2"
CornerRadius="12"
Padding="30"
BorderBrush="#FFB71C1C"
BorderThickness="1">
<StackPanel>
<StackPanel Orientation="Horizontal" Margin="0,0,0,15">
<iconPacks:PackIconMaterial Kind="AlertCircle" Width="28" Height="28" Foreground="#D32F2F" Margin="0,0,12,0"/>
<StackPanel>
<TextBlock Text="Konto löschen"
FontSize="20"
FontWeight="Bold"
Foreground="#D32F2F"/>
<TextBlock Text="⚠️ Achtung: Diese Aktion kann nicht rückgängig gemacht werden!"
FontSize="14"
Foreground="#B71C1C"
Margin="0,5,0,0"/>
</StackPanel>
</StackPanel>
<Button x:Name="DeleteAccountButton"
Width="200"
Height="45"
HorizontalAlignment="Center"
Background="#D32F2F"
Foreground="White"
FontSize="15"
FontWeight="Bold"
Click="DeleteAccountButton_Click">
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center">
<iconPacks:PackIconMaterial Kind="AccountRemove" Width="20" Height="20" Margin="0,0,8,0"/>
<TextBlock Text="Konto endgültig löschen"/>
</StackPanel>
</Button>
</StackPanel>
</Border>
</Grid>
</Grid> </Grid>
</Page> </Page>

View File

@@ -46,8 +46,43 @@ namespace SkyTeam
{ {
MessageBox.Show("Konto wurde gelöscht.", "Erfolg", MessageBoxButton.OK, MessageBoxImage.Information); MessageBox.Show("Konto wurde gelöscht.", "Erfolg", MessageBoxButton.OK, MessageBoxImage.Information);
((MainWindow)Application.Current.MainWindow).MainFrame.Navigate(new LogInPage());
} }
}
private void HomeButton_Click(object sender, RoutedEventArgs e)
{
((MainWindow)Application.Current.MainWindow).MainFrame.Navigate(new NavigationPage());
}
private void BookingsButton_Click(object sender, RoutedEventArgs e)
{
((MainWindow)Application.Current.MainWindow).MainFrame.Navigate(new MeineBuchungenPage());
}
private void SettingsButton_Click(object sender, RoutedEventArgs e)
{
((MainWindow)Application.Current.MainWindow).MainFrame.Navigate(new SettingsPage());
}
private void BookFlightButton_Click(object sender, RoutedEventArgs e)
{
((MainWindow)Application.Current.MainWindow).MainFrame.Navigate(new MeineBuchungenPage());
}
private void LogoutButton_Click(object sender, RoutedEventArgs e)
{
var result = MessageBox.Show(
"Möchten Sie sich wirklich abmelden?",
"Abmelden",
MessageBoxButton.YesNo,
MessageBoxImage.Question);
if (result == MessageBoxResult.Yes)
{
((MainWindow)Application.Current.MainWindow).MainFrame.Navigate(new LogInPage());
}
} }
} }
} }