Codepflege: CLAUDE.md und UI-Konsolidierung (Kapitel 13.4)

CLAUDE.md mit Projektkonventionen für künftige Claude-Code-Sitzungen.
Wiederkehrende UI-Muster konsolidiert: neue PageHeader-Control für
Titel/Untertitel in den Listen- und Detailansichten, globale Styles für
Dialog-Titel und Leerlisten-Hinweise statt inline wiederholter Werte.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-13 16:14:40 +02:00
co-authored by Claude Sonnet 5
parent 48d07a2b99
commit 629b8d1bf0
28 changed files with 244 additions and 52 deletions
@@ -1,6 +1,7 @@
<UserControl xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:vm="clr-namespace:LehrerApp.Desktop.ViewModels.Students"
xmlns:shared="clr-namespace:LehrerApp.Desktop.Views.Shared"
x:Class="LehrerApp.Desktop.Views.Students.StudentDetailView"
x:DataType="vm:StudentDetailViewModel">
<Grid RowDefinitions="Auto,*">
@@ -10,9 +11,7 @@
BorderBrush="{DynamicResource SystemControlForegroundBaseLowBrush}"
BorderThickness="0,0,0,1">
<Grid ColumnDefinitions="*,Auto">
<StackPanel Grid.Column="0" IsVisible="{Binding !IsEditing}">
<TextBlock Text="{Binding StudentTitle}" FontSize="22" FontWeight="SemiBold"/>
</StackPanel>
<shared:PageHeader Grid.Column="0" IsVisible="{Binding !IsEditing}" Title="{Binding StudentTitle}"/>
<StackPanel Grid.Column="0" Spacing="6" IsVisible="{Binding IsEditing}">
<Grid ColumnDefinitions="*,8,*">
<TextBox Grid.Column="0" Text="{Binding EditFirstName}" PlaceholderText="Vorname"/>
@@ -181,7 +180,7 @@
</ItemsControl.ItemTemplate>
</ItemsControl>
<TextBlock Text="Noch keine Noten für diesen Schüler erfasst." Opacity="0.4"
<TextBlock Text="Noch keine Noten für diesen Schüler erfasst." Classes="emptyhint"
IsVisible="{Binding !GradeHistory.Count}"/>
</StackPanel>
</ScrollViewer>