1
0
Files
OAiP-Presnyakov_Ilya-Labora…/Views/MainWindow.xaml
Debug_pro fb13e5a20a upload
2026-06-07 18:19:53 +03:00

94 lines
5.5 KiB
XML

<Window x:Class="SimpleWiki.Views.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:models="clr-namespace:SimpleWiki.Models"
Title="Simple Wiki"
Width="1440"
Height="900"
WindowStartupLocation="CenterScreen"
Background="{StaticResource BaseBrush}">
<Border Background="{StaticResource BaseBrush}" Padding="20">
<Grid Background="{StaticResource BaseBrush}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="320" />
<ColumnDefinition Width="380" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<StackPanel Grid.Column="0" Margin="0,0,16,0">
<Border Style="{StaticResource CardBorder}">
<StackPanel>
<TextBlock Style="{StaticResource SectionTitle}" Text="Профиль" />
<TextBlock Style="{StaticResource CaptionTextBlock}" Text="Это и есть персональная информация без хеша пароля. Бумажная методичка была бы довольна." />
<TextBlock x:Name="FullNameTextBlock" FontSize="18" FontWeight="SemiBold" Margin="0,12,0,6" />
<TextBlock x:Name="EmailTextBlock" Foreground="{StaticResource SubtextBrush}" />
<TextBlock x:Name="RoleTextBlock" Foreground="{StaticResource BlueBrush}" Margin="0,6,0,0" />
<TextBlock x:Name="CreatedAtTextBlock" Foreground="{StaticResource SubtextBrush}" Margin="0,6,0,0" />
<Button Style="{StaticResource SecondaryButton}" Content="Выйти" Click="LogoutButton_Click" />
</StackPanel>
</Border>
<Border Style="{StaticResource CardBorder}">
<StackPanel>
<TextBlock Style="{StaticResource SectionTitle}" Text="Поиск" />
<TextBox x:Name="SearchTextBox" MaxLength="150" TextChanged="SearchTextBox_TextChanged" />
<TextBlock Style="{StaticResource CaptionTextBlock}" Text="Фильтр по заголовку и краткому описанию." />
</StackPanel>
</Border>
</StackPanel>
<Border Grid.Column="1" Style="{StaticResource CardBorder}" Margin="0,0,16,0">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<StackPanel>
<TextBlock Style="{StaticResource SectionTitle}" Text="Статьи" />
<StackPanel x:Name="AdminToolbar" Orientation="Horizontal" Margin="0,0,0,12">
<Button Width="100" Style="{StaticResource PrimaryButton}" Content="Добавить" Click="AddArticleButton_Click" />
<Button Width="100" Margin="10,6,0,0" Style="{StaticResource SecondaryButton}" Content="Изменить" Click="EditArticleButton_Click" />
<Button Width="100" Margin="10,6,0,0" Style="{StaticResource DangerButton}" Content="Удалить" Click="DeleteArticleButton_Click" />
</StackPanel>
</StackPanel>
<ListBox Grid.Row="1" x:Name="ArticlesListBox" SelectionChanged="ArticlesListBox_SelectionChanged" ScrollViewer.VerticalScrollBarVisibility="Auto" ScrollViewer.HorizontalScrollBarVisibility="Disabled">
<ListBox.ItemTemplate>
<DataTemplate DataType="{x:Type models:Article}">
<StackPanel>
<TextBlock Text="{Binding Title}" FontWeight="SemiBold" FontSize="16" TextWrapping="Wrap" />
<TextBlock Text="{Binding Summary}" Foreground="{StaticResource SubtextBrush}" Margin="0,6,0,6" TextWrapping="Wrap" />
<TextBlock Foreground="{StaticResource BlueBrush}"
Text="{Binding Author.FullName, StringFormat=Автор: {0}}" />
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</Grid>
</Border>
<Border Grid.Column="2" Style="{StaticResource CardBorder}">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<StackPanel>
<TextBlock x:Name="ArticleTitleTextBlock" Style="{StaticResource PageTitle}" Text="Выберите статью" />
<TextBlock x:Name="ArticleSummaryTextBlock" Foreground="{StaticResource SubtextBrush}" TextWrapping="Wrap" Margin="0,0,0,8" />
<TextBlock x:Name="ArticleMetaTextBlock" Foreground="{StaticResource BlueBrush}" />
</StackPanel>
<Border Grid.Row="1" Margin="0,16,0,0" Background="{StaticResource CrustBrush}" BorderBrush="{StaticResource Surface1Brush}" BorderThickness="1" CornerRadius="12" ClipToBounds="True">
<Grid Background="{StaticResource CrustBrush}">
<WebBrowser x:Name="ArticleBrowser" Margin="0" />
</Grid>
</Border>
</Grid>
</Border>
</Grid>
</Border>
</Window>