* Aggiornamento alla versione 4.0.0 * Refactoring architetturale: introdotte partial classes e UserControls modulari per migliorare manutenibilità e leggibilità. * Aggiunti nuovi UserControls: `AuctionMonitorControl`, `BrowserControl`, `SettingsControl`, `StatisticsControl`. * Introdotto supporto per WebView2 per il browser integrato. * Migliorata gestione delle aste: aggiunta/rimozione tramite URL o ID, configurazione predefinita. * Nuove funzionalità di esportazione: supporto CSV, JSON, XML con opzioni configurabili. * Logging avanzato: codifica colore per severità e auto-scroll. * Tema scuro moderno e miglioramenti UI/UX: sidebar di navigazione, griglie virtualizzate, icone emoji. * Persistenza dati: salvataggio automatico di aste e impostazioni in file JSON. * Documentazione aggiornata: `README.md`, `CHANGELOG.md` e nuovi file di supporto. * Miglioramenti alla sicurezza: cookie di sessione salvati in modo sicuro con DPAPI. * Preparazione per future estensioni: placeholder per funzionalità avanzate e struttura modulare.
136 lines
6.1 KiB
XML
136 lines
6.1 KiB
XML
<UserControl x:Class="AutoBidder.Controls.StatisticsControl"
|
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
|
mc:Ignorable="d"
|
|
d:DesignHeight="800" d:DesignWidth="1200"
|
|
Background="#1E1E1E">
|
|
|
|
<UserControl.Resources>
|
|
<Style x:Key="RoundedButton" TargetType="Button">
|
|
<Setter Property="Template">
|
|
<Setter.Value>
|
|
<ControlTemplate TargetType="Button">
|
|
<Border Background="{TemplateBinding Background}"
|
|
CornerRadius="8"
|
|
Padding="{TemplateBinding Padding}">
|
|
<ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center"/>
|
|
</Border>
|
|
</ControlTemplate>
|
|
</Setter.Value>
|
|
</Setter>
|
|
<Setter Property="Foreground" Value="White"/>
|
|
<Setter Property="FontWeight" Value="Bold"/>
|
|
<Setter Property="BorderThickness" Value="0"/>
|
|
<Setter Property="Cursor" Value="Hand"/>
|
|
<Setter Property="Padding" Value="15,10"/>
|
|
</Style>
|
|
</UserControl.Resources>
|
|
|
|
<Grid>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="Auto"/>
|
|
<RowDefinition Height="*"/>
|
|
<RowDefinition Height="Auto"/>
|
|
</Grid.RowDefinitions>
|
|
|
|
<!-- Header -->
|
|
<Border Grid.Row="0" Background="#2D2D30" Padding="15" BorderBrush="#3E3E42" BorderThickness="0,0,0,1">
|
|
<Grid>
|
|
<TextBlock Text="📊 Dati Statistici - Analisi Aste Chiuse"
|
|
Foreground="#00D800"
|
|
FontSize="16"
|
|
FontWeight="Bold"
|
|
VerticalAlignment="Center"/>
|
|
|
|
<Button x:Name="LoadClosedAuctionsButton"
|
|
Content="🔄 Carica Statistiche"
|
|
HorizontalAlignment="Right"
|
|
Background="#007ACC"
|
|
Style="{StaticResource RoundedButton}"
|
|
Click="LoadClosedAuctionsButton_Click"/>
|
|
</Grid>
|
|
</Border>
|
|
|
|
<!-- DataGrid Statistiche -->
|
|
<DataGrid Grid.Row="1"
|
|
x:Name="StatsDataGrid"
|
|
AutoGenerateColumns="False"
|
|
IsReadOnly="True"
|
|
Background="#1E1E1E"
|
|
Foreground="#CCCCCC"
|
|
RowBackground="#1E1E1E"
|
|
AlternatingRowBackground="#252526"
|
|
GridLinesVisibility="Horizontal"
|
|
HeadersVisibility="Column"
|
|
BorderThickness="0"
|
|
Margin="15">
|
|
<DataGrid.ColumnHeaderStyle>
|
|
<Style TargetType="DataGridColumnHeader">
|
|
<Setter Property="Background" Value="#2D2D30"/>
|
|
<Setter Property="Foreground" Value="#CCCCCC"/>
|
|
<Setter Property="FontWeight" Value="Bold"/>
|
|
<Setter Property="Padding" Value="10,8"/>
|
|
<Setter Property="BorderThickness" Value="0,0,1,1"/>
|
|
<Setter Property="BorderBrush" Value="#3E3E42"/>
|
|
</Style>
|
|
</DataGrid.ColumnHeaderStyle>
|
|
<DataGrid.CellStyle>
|
|
<Style TargetType="DataGridCell">
|
|
<Setter Property="BorderThickness" Value="0"/>
|
|
<Setter Property="Padding" Value="10,5"/>
|
|
<Setter Property="Background" Value="Transparent"/>
|
|
<Setter Property="Foreground" Value="#CCCCCC"/>
|
|
</Style>
|
|
</DataGrid.CellStyle>
|
|
<DataGrid.Columns>
|
|
<DataGridTextColumn Header="Prodotto" Binding="{Binding ProductName}" Width="3*"/>
|
|
<DataGridTextColumn Header="Prezzo Medio" Binding="{Binding AverageFinalPrice, StringFormat=€{0:F2}}" Width="120"/>
|
|
<DataGridTextColumn Header="Click Medi" Binding="{Binding AverageBidsUsed, StringFormat={}{0:F0}}" Width="100"/>
|
|
<DataGridTextColumn Header="Vincitore Frequente" Binding="{Binding Winner}" Width="150"/>
|
|
<DataGridTextColumn Header="# Aste" Binding="{Binding Count}" Width="80"/>
|
|
</DataGrid.Columns>
|
|
</DataGrid>
|
|
|
|
<!-- Footer: Status -->
|
|
<Border Grid.Row="2"
|
|
Background="#252526"
|
|
Padding="15"
|
|
BorderBrush="#3E3E42"
|
|
BorderThickness="0,1,0,0">
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="*"/>
|
|
<ColumnDefinition Width="Auto"/>
|
|
</Grid.ColumnDefinitions>
|
|
|
|
<StackPanel Grid.Column="0">
|
|
<TextBlock x:Name="StatsStatusText"
|
|
Text="Pronto per caricare statistiche"
|
|
FontSize="13"
|
|
Foreground="#CCCCCC"
|
|
VerticalAlignment="Center"/>
|
|
|
|
<TextBlock x:Name="ExportProgressText"
|
|
Text=""
|
|
FontSize="11"
|
|
Foreground="#999999"
|
|
Margin="0,5,0,0"
|
|
Visibility="Collapsed"/>
|
|
</StackPanel>
|
|
|
|
<ProgressBar Grid.Column="1"
|
|
x:Name="ExportProgressBar"
|
|
Width="200"
|
|
Height="20"
|
|
IsIndeterminate="True"
|
|
Foreground="#007ACC"
|
|
Background="#1E1E1E"
|
|
BorderBrush="#3E3E42"
|
|
Visibility="Collapsed"/>
|
|
</Grid>
|
|
</Border>
|
|
</Grid>
|
|
</UserControl>
|