Add dark theme and repair features
- Dark theme with white text for better readability - Flush DNS, Reset TCP/IP, Reboot buttons - ShellView.xaml: dark background, white text colors - ShellViewModel.cs: new repair commands - Publish settings for self-contained EXE
This commit is contained in:
1 parent
e57c29f781
commit
8068fca5bc
4 files changed
+161
-139
No files matched your search
+3
@@ -19,6 +19,9 @@
|
||||
<Company>Enterprise IT</Company>
|
||||
<Product>Enterprise Troubleshooter</Product>
|
||||
<Description>Enterprise Windows 11 24H2+ Troubleshooting Application for VDI and Physical Endpoints</Description>
|
||||
<PublishSingleFile>true</PublishSingleFile>
|
||||
<SelfContained>true</SelfContained>
|
||||
<PublishTrimmed>false</PublishTrimmed>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
||||
+152
-139
@@ -9,7 +9,6 @@
|
||||
MinWidth="900"
|
||||
MinHeight="600"
|
||||
WindowStartupLocation="CenterScreen"
|
||||
Background="#F3F3F3"
|
||||
FontFamily="Segoe UI"
|
||||
FontSize="14">
|
||||
|
||||
@@ -62,23 +61,24 @@
|
||||
<TextBlock Text="{Binding}"
|
||||
FontWeight="SemiBold"
|
||||
FontSize="14"
|
||||
Foreground="#1A1A1A"/>
|
||||
Foreground="#D4D4D4"/>
|
||||
</DataTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
<Setter Property="Padding" Value="12"/>
|
||||
<Setter Property="Margin" Value="0,0,12,12"/>
|
||||
<Setter Property="BorderBrush" Value="#D0D0D0"/>
|
||||
<Setter Property="BorderThickness" Value="1"/>
|
||||
<Setter Property="Background" Value="White"/>
|
||||
</Style>
|
||||
<Setter Property="BorderBrush" Value="#3E3E42"/>
|
||||
<Setter Property="BorderThickness" Value="1"/>
|
||||
<Setter Property="Background" Value="#3D3D40"/>
|
||||
<Setter Property="Foreground" Value="#FFFFFF"/>
|
||||
</Style>
|
||||
|
||||
<Style TargetType="TextBox">
|
||||
<Setter Property="FontFamily" Value="Consolas"/>
|
||||
<Setter Property="FontSize" Value="12"/>
|
||||
<Setter Property="IsReadOnly" Value="True"/>
|
||||
<Setter Property="Background" Value="#1E1E1E"/>
|
||||
<Setter Property="Foreground" Value="#D4D4D4"/>
|
||||
<Setter Property="Foreground" Value="#FFFFFF"/>
|
||||
<Setter Property="BorderThickness" Value="0"/>
|
||||
<Setter Property="Padding" Value="8"/>
|
||||
</Style>
|
||||
@@ -88,6 +88,10 @@
|
||||
</DataTemplate>
|
||||
</Window.Resources>
|
||||
|
||||
<Window.Background>
|
||||
<SolidColorBrush Color="#2D2D30"/>
|
||||
</Window.Background>
|
||||
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
@@ -123,7 +127,7 @@
|
||||
</Border>
|
||||
|
||||
<!-- ===== TOOLBAR ===== -->
|
||||
<Border Grid.Row="1" Background="White" BorderBrush="#D0D0D0"
|
||||
<Border Grid.Row="1" Background="#3D3D40" BorderBrush="#3E3E42"
|
||||
BorderThickness="0,1,0,1" Padding="16,10">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
@@ -147,10 +151,19 @@
|
||||
<Button Content="GPO Refresh" Command="{Binding RunGpUpdateCommand}"
|
||||
Background="#D83B01" Foreground="White"
|
||||
IsEnabled="{Binding IsRepairMode}"/>
|
||||
<Button Content="Flush DNS" Command="{Binding FlushDnsCommand}"
|
||||
Background="#D83B01" Foreground="White"
|
||||
IsEnabled="{Binding IsRepairMode}"/>
|
||||
<Button Content="Reset TCP/IP" Command="{Binding ResetTcpIpCommand}"
|
||||
Background="#D83B01" Foreground="White"
|
||||
IsEnabled="{Binding IsRepairMode}"/>
|
||||
<Button Content="Reboot" Command="{Binding RebootCommand}"
|
||||
Background="#D83B01" Foreground="White"
|
||||
IsEnabled="{Binding !IsRunningAnyDiagnostic}"/>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Grid.Column="1" Orientation="Horizontal" VerticalAlignment="Center">
|
||||
<TextBlock Text="Repair Mode:" Foreground="#555" VerticalAlignment="Center"
|
||||
<TextBlock Text="Repair Mode:" Foreground="White" VerticalAlignment="Center"
|
||||
Margin="0,0,8,0" FontWeight="SemiBold"/>
|
||||
<ToggleButton x:Name="RepairModeToggle" Content="Repair Mode" Width="120"
|
||||
Padding="8,4" Background="#E0E0E0" Foreground="#333"
|
||||
@@ -206,100 +219,100 @@
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<StackPanel Grid.Column="0" Margin="0,0,4,4">
|
||||
<TextBlock Text="Adapters" FontWeight="SemiBold" FontSize="12" Foreground="#555"/>
|
||||
<Border Background="{Binding NetworkResult.AdaptersStatus, Converter={StaticResource StatusToBrush}}"
|
||||
CornerRadius="3" Padding="8,3" Margin="0,2,0,0">
|
||||
<TextBlock Text="{Binding NetworkResult.AdaptersStatus}"
|
||||
FontSize="12" Foreground="White" FontWeight="SemiBold"/>
|
||||
</Border>
|
||||
</StackPanel>
|
||||
<StackPanel Grid.Column="0" Margin="0,0,4,4">
|
||||
<TextBlock Text="Adapters" FontWeight="SemiBold" FontSize="12" Foreground="White"/>
|
||||
<Border Background="{Binding NetworkResult.AdaptersStatus, Converter={StaticResource StatusToBrush}}"
|
||||
CornerRadius="3" Padding="8,3" Margin="0,2,0,0">
|
||||
<TextBlock Text="{Binding NetworkResult.AdaptersStatus}"
|
||||
FontSize="12" Foreground="White" FontWeight="SemiBold"/>
|
||||
</Border>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Grid.Column="1" Margin="4,0,4,4">
|
||||
<TextBlock Text="Gateway" FontWeight="SemiBold" FontSize="12" Foreground="#555"/>
|
||||
<Border Background="{Binding NetworkResult.DefaultGatewayReachable, Converter={StaticResource StatusToBrush}}"
|
||||
CornerRadius="3" Padding="8,3" Margin="0,2,0,0">
|
||||
<TextBlock Text="{Binding NetworkResult.DefaultGatewayReachable}"
|
||||
FontSize="12" Foreground="White" FontWeight="SemiBold"/>
|
||||
</Border>
|
||||
<TextBlock Text="{Binding NetworkResult.DefaultGateway}" FontSize="11" Foreground="#888" Margin="0,2,0,0"/>
|
||||
</StackPanel>
|
||||
<StackPanel Grid.Column="1" Margin="4,0,4,4">
|
||||
<TextBlock Text="Gateway" FontWeight="SemiBold" FontSize="12" Foreground="White"/>
|
||||
<Border Background="{Binding NetworkResult.DefaultGatewayReachable, Converter={StaticResource StatusToBrush}}"
|
||||
CornerRadius="3" Padding="8,3" Margin="0,2,0,0">
|
||||
<TextBlock Text="{Binding NetworkResult.DefaultGatewayReachable}"
|
||||
FontSize="12" Foreground="White" FontWeight="SemiBold"/>
|
||||
</Border>
|
||||
<TextBlock Text="{Binding NetworkResult.DefaultGateway}" FontSize="11" Foreground="White" Margin="0,2,0,0"/>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Grid.Column="2" Margin="4,0,0,4">
|
||||
<TextBlock Text="DNS" FontWeight="SemiBold" FontSize="12" Foreground="#555"/>
|
||||
<Border Background="{Binding NetworkResult.DnsResolution, Converter={StaticResource StatusToBrush}}"
|
||||
CornerRadius="3" Padding="8,3" Margin="0,2,0,0">
|
||||
<TextBlock Text="{Binding NetworkResult.DnsResolution}"
|
||||
FontSize="12" Foreground="White" FontWeight="SemiBold"/>
|
||||
</Border>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
<StackPanel Grid.Column="2" Margin="4,0,0,4">
|
||||
<TextBlock Text="DNS" FontWeight="SemiBold" FontSize="12" Foreground="White"/>
|
||||
<Border Background="{Binding NetworkResult.DnsResolution, Converter={StaticResource StatusToBrush}}"
|
||||
CornerRadius="3" Padding="8,3" Margin="0,2,0,0">
|
||||
<TextBlock Text="{Binding NetworkResult.DnsResolution}"
|
||||
FontSize="12" Foreground="White" FontWeight="SemiBold"/>
|
||||
</Border>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
|
||||
<StackPanel Margin="0,4,0,0">
|
||||
<TextBlock FontSize="11" Margin="0,1,0,1">
|
||||
<Run FontWeight="SemiBold" Foreground="#555" Text="DHCP: "/>
|
||||
<Run Foreground="#888" Text="{Binding NetworkResult.DhcpStatus}"/>
|
||||
</TextBlock>
|
||||
<TextBlock FontSize="11" Margin="0,1,0,1">
|
||||
<Run FontWeight="SemiBold" Foreground="#555" Text="Internet: "/>
|
||||
<Run Foreground="#888" Text="{Binding NetworkResult.InternetConnectivity}"/>
|
||||
</TextBlock>
|
||||
<TextBlock FontSize="11" Margin="0,1,0,1" TextWrapping="Wrap">
|
||||
<Run FontWeight="SemiBold" Foreground="#555" Text="DNS Staleness: "/>
|
||||
<Run Foreground="#888" Text="{Binding NetworkResult.DnsStalenessText}"/>
|
||||
</TextBlock>
|
||||
<TextBlock FontSize="11" Margin="0,1,0,1" TextWrapping="Wrap">
|
||||
<Run FontWeight="SemiBold" Foreground="#555" Text="NTP Time Skew: "/>
|
||||
<Run Foreground="#888" Text="{Binding NetworkResult.NtpTimeSkewText}"/>
|
||||
</TextBlock>
|
||||
<TextBlock FontSize="11" Margin="0,1,0,1" TextWrapping="Wrap">
|
||||
<Run FontWeight="SemiBold" Foreground="#555" Text="DNS Servers: "/>
|
||||
<Run Foreground="#888" Text="{Binding NetworkResult.DnsServersText}"/>
|
||||
</TextBlock>
|
||||
<TextBlock FontSize="11" Margin="0,1,0,1" TextWrapping="Wrap">
|
||||
<Run FontWeight="SemiBold" Foreground="#555" Text="Active: "/>
|
||||
<Run Foreground="#888" Text="{Binding NetworkResult.ActiveAdapterNamesText}"/>
|
||||
</TextBlock>
|
||||
</StackPanel>
|
||||
<StackPanel Margin="0,4,0,0">
|
||||
<TextBlock FontSize="11" Margin="0,1,0,1">
|
||||
<Run FontWeight="SemiBold" Foreground="White" Text="DHCP: "/>
|
||||
<Run Foreground="White" Text="{Binding NetworkResult.DhcpStatus}"/>
|
||||
</TextBlock>
|
||||
<TextBlock FontSize="11" Margin="0,1,0,1">
|
||||
<Run FontWeight="SemiBold" Foreground="White" Text="Internet: "/>
|
||||
<Run Foreground="White" Text="{Binding NetworkResult.InternetConnectivity}"/>
|
||||
</TextBlock>
|
||||
<TextBlock FontSize="11" Margin="0,1,0,1" TextWrapping="Wrap">
|
||||
<Run FontWeight="SemiBold" Foreground="White" Text="DNS Staleness: "/>
|
||||
<Run Foreground="White" Text="{Binding NetworkResult.DnsStalenessText}"/>
|
||||
</TextBlock>
|
||||
<TextBlock FontSize="11" Margin="0,1,0,1" TextWrapping="Wrap">
|
||||
<Run FontWeight="SemiBold" Foreground="White" Text="NTP Time Skew: "/>
|
||||
<Run Foreground="White" Text="{Binding NetworkResult.NtpTimeSkewText}"/>
|
||||
</TextBlock>
|
||||
<TextBlock FontSize="11" Margin="0,1,0,1" TextWrapping="Wrap">
|
||||
<Run FontWeight="SemiBold" Foreground="White" Text="DNS Servers: "/>
|
||||
<Run Foreground="White" Text="{Binding NetworkResult.DnsServersText}"/>
|
||||
</TextBlock>
|
||||
<TextBlock FontSize="11" Margin="0,1,0,1" TextWrapping="Wrap">
|
||||
<Run FontWeight="SemiBold" Foreground="White" Text="Active: "/>
|
||||
<Run Foreground="White" Text="{Binding NetworkResult.ActiveAdapterNamesText}"/>
|
||||
</TextBlock>
|
||||
</StackPanel>
|
||||
|
||||
<TextBlock Text="Running network diagnostics..." Foreground="#0078D4"
|
||||
FontSize="12" FontWeight="SemiBold" Margin="0,8,0,0"
|
||||
Visibility="{Binding IsNetworkRunning, Converter={StaticResource BoolToVis}}"/>
|
||||
</StackPanel>
|
||||
</GroupBox>
|
||||
<TextBlock Text="Running network diagnostics..." Foreground="#0078D4"
|
||||
FontSize="12" FontWeight="SemiBold" Margin="0,8,0,0"
|
||||
Visibility="{Binding IsNetworkRunning, Converter={StaticResource BoolToVis}}"/>
|
||||
</StackPanel>
|
||||
</GroupBox>
|
||||
|
||||
<!-- ===== PROFILE & STORAGE PANEL ===== -->
|
||||
<GroupBox Grid.Row="0" Grid.Column="1" Header="Profile & Storage">
|
||||
<StackPanel Margin="0,8,0,0">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*"/>
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<!-- ===== PROFILE & STORAGE PANEL ===== -->
|
||||
<GroupBox Grid.Row="0" Grid.Column="1" Header="Profile & Storage">
|
||||
<StackPanel Margin="0,8,0,0">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*"/>
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<StackPanel Grid.Column="0" Margin="0,0,8,0">
|
||||
<TextBlock Text="Disk Space" FontWeight="SemiBold" FontSize="12" Foreground="#555"/>
|
||||
<Border Background="{Binding StorageResult.LocalDiskSpace, Converter={StaticResource StatusToBrush}}"
|
||||
CornerRadius="3" Padding="8,3" Margin="0,2,0,0">
|
||||
<TextBlock Text="{Binding StorageResult.LocalDiskSpace}"
|
||||
FontSize="12" Foreground="White" FontWeight="SemiBold"/>
|
||||
</Border>
|
||||
<TextBlock Text="{Binding StorageResult.DiskFreePercent, StringFormat={}{0:F1}% free}"
|
||||
FontSize="11" Foreground="#888" Margin="0,2,0,0"/>
|
||||
<TextBlock Text="{Binding StorageResult.DiskFreeBytes, StringFormat={}{0:N0} GB free}"
|
||||
FontSize="10" Foreground="#999" Margin="0,1,0,0"
|
||||
Visibility="{Binding StorageResult.DiskFreeBytes, Converter={StaticResource BoolToVis}}"/>
|
||||
</StackPanel>
|
||||
<StackPanel Grid.Column="0" Margin="0,0,8,0">
|
||||
<TextBlock Text="Disk Space" FontWeight="SemiBold" FontSize="12" Foreground="White"/>
|
||||
<Border Background="{Binding StorageResult.LocalDiskSpace, Converter={StaticResource StatusToBrush}}"
|
||||
CornerRadius="3" Padding="8,3" Margin="0,2,0,0">
|
||||
<TextBlock Text="{Binding StorageResult.LocalDiskSpace}"
|
||||
FontSize="12" Foreground="White" FontWeight="SemiBold"/>
|
||||
</Border>
|
||||
<TextBlock Text="{Binding StorageResult.DiskFreePercent, StringFormat={}{0:F1}% free}"
|
||||
FontSize="11" Foreground="White" Margin="0,2,0,0"/>
|
||||
<TextBlock Text="{Binding StorageResult.DiskFreeBytes, StringFormat={}{0:N0} GB free}"
|
||||
FontSize="10" Foreground="White" Margin="0,1,0,0"
|
||||
Visibility="{Binding StorageResult.DiskFreeBytes, Converter={StaticResource BoolToVis}}"/>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Grid.Column="1">
|
||||
<TextBlock Text="Temp Folder" FontWeight="SemiBold" FontSize="12" Foreground="#555"/>
|
||||
<Border Background="{Binding StorageResult.UserProfileTempSize, Converter={StaticResource StatusToBrush}}"
|
||||
CornerRadius="3" Padding="8,3" Margin="0,2,0,0">
|
||||
<TextBlock Text="{Binding StorageResult.UserProfileTempSize}"
|
||||
FontSize="12" Foreground="White" FontWeight="SemiBold"/>
|
||||
</Border>
|
||||
<TextBlock Text="{Binding StorageResult.UserProfileTempBytes, StringFormat={}{0:N0} bytes}"
|
||||
FontSize="11" Foreground="#888" Margin="0,2,0,0"/>
|
||||
<StackPanel Grid.Column="1">
|
||||
<TextBlock Text="Temp Folder" FontWeight="SemiBold" FontSize="12" Foreground="White"/>
|
||||
<Border Background="{Binding StorageResult.UserProfileTempSize, Converter={StaticResource StatusToBrush}}"
|
||||
CornerRadius="3" Padding="8,3" Margin="0,2,0,0">
|
||||
<TextBlock Text="{Binding StorageResult.UserProfileTempSize}"
|
||||
FontSize="12" Foreground="White" FontWeight="SemiBold"/>
|
||||
</Border>
|
||||
<TextBlock Text="{Binding StorageResult.UserProfileTempBytes, StringFormat={}{0:N0} bytes}"
|
||||
FontSize="11" Foreground="White" Margin="0,2,0,0"/>
|
||||
<Button Content="Clean Temp" Command="{Binding CleanTempFoldersCommand}"
|
||||
FontSize="10" Padding="8,3" Margin="0,4,0,0"
|
||||
Background="#FFF3E0" Foreground="#E65100" FontWeight="SemiBold"
|
||||
@@ -308,27 +321,27 @@
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
|
||||
<TextBlock Text="Omnissa Horizon" FontWeight="SemiBold" FontSize="12" Foreground="#555" Margin="0,8,0,4"/>
|
||||
<TextBlock Text="Omnissa Horizon" FontWeight="SemiBold" FontSize="12" Foreground="White" Margin="0,8,0,4"/>
|
||||
<Border Background="{Binding StorageResult.HorizonAgentStatus, Converter={StaticResource StatusToBrush}}"
|
||||
CornerRadius="3" Padding="8,3" Margin="0,0,0,4">
|
||||
<TextBlock Text="{Binding StorageResult.HorizonAgentStatus}"
|
||||
FontSize="12" Foreground="White" FontWeight="SemiBold"/>
|
||||
</Border>
|
||||
<TextBlock Text="{Binding StorageResult.HorizonProtocol}"
|
||||
FontSize="10" Foreground="#888" Margin="0,0,0,2"
|
||||
FontSize="10" Foreground="White" Margin="0,0,0,2"
|
||||
Visibility="{Binding StorageResult.HorizonProtocol, Converter={StaticResource BoolToVis}}"/>
|
||||
<TextBlock Text="{Binding StorageResult.HorizonConnectionState}"
|
||||
FontSize="10" Foreground="#888" Margin="0,0,0,2"
|
||||
FontSize="10" Foreground="White" Margin="0,0,0,2"
|
||||
Visibility="{Binding StorageResult.HorizonConnectionState, Converter={StaticResource BoolToVis}}"/>
|
||||
|
||||
<TextBlock Text="App Volumes" FontWeight="SemiBold" FontSize="12" Foreground="#555" Margin="0,4,0,4"/>
|
||||
<TextBlock Text="App Volumes" FontWeight="SemiBold" FontSize="12" Foreground="White" Margin="0,4,0,4"/>
|
||||
<Border Background="{Binding StorageResult.AppVolumesStatus, Converter={StaticResource StatusToBrush}}"
|
||||
CornerRadius="3" Padding="8,3" Margin="0,0,0,4">
|
||||
<TextBlock Text="{Binding StorageResult.AppVolumesStatus}"
|
||||
FontSize="12" Foreground="White" FontWeight="SemiBold"/>
|
||||
</Border>
|
||||
<TextBlock Text="{Binding StorageResult.AppVolumesInfo}"
|
||||
FontSize="11" Foreground="#888" Margin="0,0,0,4" TextWrapping="Wrap"/>
|
||||
FontSize="11" Foreground="White" Margin="0,0,0,4" TextWrapping="Wrap"/>
|
||||
|
||||
<ItemsControl ItemsSource="{Binding StorageResult.LargeUserProfiles}" Margin="0,8,0,0">
|
||||
<ItemsControl.ItemTemplate>
|
||||
@@ -337,12 +350,12 @@
|
||||
CornerRadius="4" Padding="8,6" Margin="0,0,0,4">
|
||||
<StackPanel>
|
||||
<TextBlock>
|
||||
<Run Text="User: " Foreground="#888" FontWeight="SemiBold"/>
|
||||
<Run Text="User: " Foreground="White" FontWeight="SemiBold"/>
|
||||
<Run Text="{Binding UserName}" Foreground="#333" FontWeight="Bold"/>
|
||||
</TextBlock>
|
||||
<TextBlock Text="{Binding TempSizeHuman}" Foreground="#E65100"
|
||||
FontWeight="SemiBold" FontSize="12" Margin="0,2,0,2"/>
|
||||
<TextBlock Text="{Binding TempPath}" FontSize="9" Foreground="#999"
|
||||
<TextBlock Text="{Binding TempPath}" FontSize="9" Foreground="White"
|
||||
TextWrapping="Wrap"/>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
@@ -367,7 +380,7 @@
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<StackPanel Grid.Column="0" Margin="0,0,8,0">
|
||||
<TextBlock Text="Service State" FontWeight="SemiBold" FontSize="12" Foreground="#555"/>
|
||||
<TextBlock Text="Service State" FontWeight="SemiBold" FontSize="12" Foreground="White"/>
|
||||
<Border Background="{Binding PrintResult.SpoolerState, Converter={StaticResource ServiceStateToBrush}}"
|
||||
CornerRadius="3" Padding="8,3" Margin="0,2,0,0">
|
||||
<TextBlock Text="{Binding PrintResult.SpoolerState}"
|
||||
@@ -376,7 +389,7 @@
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Grid.Column="1" Margin="0,0,8,0">
|
||||
<TextBlock Text="Pending Jobs" FontWeight="SemiBold" FontSize="12" Foreground="#555"/>
|
||||
<TextBlock Text="Pending Jobs" FontWeight="SemiBold" FontSize="12" Foreground="White"/>
|
||||
<TextBlock Text="{Binding PrintResult.PendingJobs, StringFormat={}{0} job(s)}"
|
||||
FontSize="13" Margin="0,2,0,0"/>
|
||||
</StackPanel>
|
||||
@@ -387,9 +400,9 @@
|
||||
IsEnabled="{Binding IsRepairMode}"/>
|
||||
</Grid>
|
||||
|
||||
<TextBlock Text="{Binding PrintResult.QueueInfo}" FontSize="11" Foreground="#888" Margin="0,4,0,0"/>
|
||||
<TextBlock Text="{Binding PrintResult.QueueInfo}" FontSize="11" Foreground="White" Margin="0,4,0,0"/>
|
||||
<TextBlock Text="{Binding PrintResult.VdiPrinterRedirected}"
|
||||
FontSize="11" Foreground="#888" Margin="0,2,0,0" TextWrapping="Wrap"/>
|
||||
FontSize="11" Foreground="White" Margin="0,2,0,0" TextWrapping="Wrap"/>
|
||||
|
||||
<TextBlock Text="Running print diagnostics..." Foreground="#0078D4"
|
||||
FontSize="12" FontWeight="SemiBold" Margin="0,8,0,0"
|
||||
@@ -407,33 +420,33 @@
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<StackPanel Grid.Column="0" Margin="0,0,8,0">
|
||||
<TextBlock Text="SFC Scan" FontWeight="SemiBold" FontSize="12" Foreground="#555"/>
|
||||
<TextBlock Text="SFC Scan" FontWeight="SemiBold" FontSize="12" Foreground="White"/>
|
||||
<Border Background="{Binding HealthResult.SfcHealth, Converter={StaticResource StatusToBrush}}"
|
||||
CornerRadius="3" Padding="8,3" Margin="0,2,0,0">
|
||||
<TextBlock Text="{Binding HealthResult.SfcHealth}"
|
||||
FontSize="12" Foreground="White" FontWeight="SemiBold"/>
|
||||
</Border>
|
||||
<TextBlock Text="{Binding HealthResult.SfcOutput}"
|
||||
FontSize="10" Foreground="#888" Margin="0,4,0,0"
|
||||
FontSize="10" Foreground="White" Margin="0,4,0,0"
|
||||
TextWrapping="Wrap" MaxHeight="60"
|
||||
Visibility="{Binding HealthResult.SfcOutput, Converter={StaticResource BoolToVis}}"/>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Grid.Column="1">
|
||||
<TextBlock Text="DISM Scan" FontWeight="SemiBold" FontSize="12" Foreground="#555"/>
|
||||
<TextBlock Text="DISM Scan" FontWeight="SemiBold" FontSize="12" Foreground="White"/>
|
||||
<Border Background="{Binding HealthResult.DISMHealth, Converter={StaticResource StatusToBrush}}"
|
||||
CornerRadius="3" Padding="8,3" Margin="0,2,0,0">
|
||||
<TextBlock Text="{Binding HealthResult.DISMHealth}"
|
||||
FontSize="12" Foreground="White" FontWeight="SemiBold"/>
|
||||
</Border>
|
||||
<TextBlock Text="{Binding HealthResult.DISMOutput}"
|
||||
FontSize="10" Foreground="#888" Margin="0,4,0,0"
|
||||
FontSize="10" Foreground="White" Margin="0,4,0,0"
|
||||
TextWrapping="Wrap" MaxHeight="60"
|
||||
Visibility="{Binding HealthResult.DISMOutput, Converter={StaticResource BoolToVis}}"/>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
|
||||
<TextBlock Text="Pending Reboot" FontWeight="SemiBold" FontSize="12" Foreground="#555" Margin="0,8,0,4"/>
|
||||
<TextBlock Text="Pending Reboot" FontWeight="SemiBold" FontSize="12" Foreground="White" Margin="0,8,0,4"/>
|
||||
<Border Background="{Binding HealthResult.PendingReboot, Converter={StaticResource StatusToBrush}}"
|
||||
CornerRadius="3" Padding="8,3" Margin="0,0,0,4">
|
||||
<TextBlock Text="{Binding HealthResult.PendingReboot}"
|
||||
@@ -441,42 +454,42 @@
|
||||
</Border>
|
||||
<StackPanel Margin="0,0,0,4">
|
||||
<TextBlock FontSize="11" Foreground="#777">
|
||||
<Run FontWeight="SemiBold" Foreground="#555" Text="CBS RebootPending: "/>
|
||||
<Run FontWeight="SemiBold" Foreground="White" Text="CBS RebootPending: "/>
|
||||
<Run Foreground="{Binding HealthResult.CBSRebootPending, Converter={StaticResource StatusToBrush}}"
|
||||
Text="{Binding HealthResult.CBSRebootPending, StringFormat={}{0}}"/>
|
||||
</TextBlock>
|
||||
<TextBlock FontSize="11" Foreground="#777">
|
||||
<Run FontWeight="SemiBold" Foreground="#555" Text="WU RebootRequired: "/>
|
||||
<Run FontWeight="SemiBold" Foreground="White" Text="WU RebootRequired: "/>
|
||||
<Run Foreground="{Binding HealthResult.WURebootRequired, Converter={StaticResource StatusToBrush}}"
|
||||
Text="{Binding HealthResult.WURebootRequired, StringFormat={}{0}}"/>
|
||||
</TextBlock>
|
||||
<TextBlock FontSize="11" Foreground="#777">
|
||||
<Run FontWeight="SemiBold" Foreground="#555" Text="PendingFileRenameOps: "/>
|
||||
<Run FontWeight="SemiBold" Foreground="White" Text="PendingFileRenameOps: "/>
|
||||
<Run Foreground="{Binding HealthResult.PendingFileRenameOperations, Converter={StaticResource StatusToBrush}}"
|
||||
Text="{Binding HealthResult.PendingFileRenameOperations, StringFormat={}{0}}"/>
|
||||
</TextBlock>
|
||||
<TextBlock FontSize="11" Foreground="#777">
|
||||
<Run FontWeight="SemiBold" Foreground="#555" Text="WU RebootRequired Key: "/>
|
||||
<Run FontWeight="SemiBold" Foreground="White" Text="WU RebootRequired Key: "/>
|
||||
<Run Foreground="{Binding HealthResult.RebootRequiredRegistryKey, Converter={StaticResource StatusToBrush}}"
|
||||
Text="{Binding HealthResult.RebootRequiredRegistryKey, StringFormat={}{0}}"/>
|
||||
</TextBlock>
|
||||
</StackPanel>
|
||||
<TextBlock Text="{Binding HealthResult.PendingRebootReason}"
|
||||
FontSize="11" Foreground="#888" Margin="0,0,0,4" TextWrapping="Wrap"/>
|
||||
FontSize="11" Foreground="White" Margin="0,0,0,4" TextWrapping="Wrap"/>
|
||||
|
||||
<TextBlock Text="Windows Update" FontWeight="SemiBold" FontSize="12" Foreground="#555" Margin="0,8,0,4"/>
|
||||
<TextBlock Text="Windows Update" FontWeight="SemiBold" FontSize="12" Foreground="White" Margin="0,8,0,4"/>
|
||||
<Border Background="{Binding HealthResult.WindowsUpdateStatus, Converter={StaticResource StatusToBrush}}"
|
||||
CornerRadius="3" Padding="8,3" Margin="0,0,0,4">
|
||||
<TextBlock Text="{Binding HealthResult.WindowsUpdateStatus}"
|
||||
FontSize="12" Foreground="White" FontWeight="SemiBold"/>
|
||||
</Border>
|
||||
<TextBlock Text="{Binding HealthResult.WindowsUpdateServiceState}"
|
||||
FontSize="10" Foreground="#888" Margin="0,0,0,2"
|
||||
FontSize="10" Foreground="White" Margin="0,0,0,2"
|
||||
Visibility="{Binding HealthResult.WindowsUpdateServiceState, Converter={StaticResource BoolToVis}}"/>
|
||||
<TextBlock Text="{Binding HealthResult.LastSuccessUpdate, StringFormat='Last success: {0}'}"
|
||||
FontSize="11" Foreground="#888" Margin="0,2,0,0"/>
|
||||
FontSize="11" Foreground="White" Margin="0,2,0,0"/>
|
||||
<TextBlock Text="{Binding HealthResult.LastUpdateCheck, StringFormat='Last check: {0}'}"
|
||||
FontSize="11" Foreground="#888" Margin="0,2,0,0"/>
|
||||
FontSize="11" Foreground="White" Margin="0,2,0,0"/>
|
||||
|
||||
<TextBlock Text="Running Windows health diagnostics..." Foreground="#0078D4"
|
||||
FontSize="12" FontWeight="SemiBold" Margin="0,8,0,0"
|
||||
@@ -500,46 +513,46 @@
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<StackPanel Grid.Row="0" Grid.Column="0">
|
||||
<TextBlock Text="Domain" FontWeight="SemiBold" FontSize="12" Foreground="#555"/>
|
||||
<TextBlock Text="Domain" FontWeight="SemiBold" FontSize="12" Foreground="White"/>
|
||||
<Border Background="{Binding AdResult.DomainJoined, Converter={StaticResource StatusToBrush}}"
|
||||
CornerRadius="3" Padding="8,3" Margin="0,2,0,0">
|
||||
<TextBlock Text="{Binding AdResult.DomainJoined}"
|
||||
FontSize="12" Foreground="White" FontWeight="SemiBold"/>
|
||||
</Border>
|
||||
<TextBlock Text="{Binding AdResult.DomainName}"
|
||||
FontSize="10" Foreground="#888" Margin="0,2,0,0" TextWrapping="Wrap"/>
|
||||
FontSize="10" Foreground="White" Margin="0,2,0,0" TextWrapping="Wrap"/>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Grid.Row="0" Grid.Column="1" Margin="16,0,0,0">
|
||||
<TextBlock Text="Logged On User" FontWeight="SemiBold" FontSize="12" Foreground="#555"/>
|
||||
<TextBlock Text="Logged On User" FontWeight="SemiBold" FontSize="12" Foreground="White"/>
|
||||
<TextBlock Text="{Binding AdResult.LoggedOnUser}"
|
||||
FontSize="12" Foreground="#333" FontWeight="SemiBold" Margin="0,2,0,0"/>
|
||||
<TextBlock Text="{Binding AdResult.LogonServer}"
|
||||
FontSize="10" Foreground="#888" Margin="0,1,0,0"/>
|
||||
FontSize="10" Foreground="White" Margin="0,1,0,0"/>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Grid.Row="1" Grid.Column="0" Margin="0,8,0,0">
|
||||
<TextBlock Text="Domain Controller" FontWeight="SemiBold" FontSize="12" Foreground="#555"/>
|
||||
<TextBlock Text="Domain Controller" FontWeight="SemiBold" FontSize="12" Foreground="White"/>
|
||||
<Border Background="{Binding AdResult.DcReachable, Converter={StaticResource StatusToBrush}}"
|
||||
CornerRadius="3" Padding="8,3" Margin="0,2,0,0">
|
||||
<TextBlock Text="{Binding AdResult.DcReachable}"
|
||||
FontSize="12" Foreground="White" FontWeight="SemiBold"/>
|
||||
</Border>
|
||||
<TextBlock Text="{Binding AdResult.DomainController}"
|
||||
FontSize="10" Foreground="#888" Margin="0,2,0,0" TextWrapping="Wrap"/>
|
||||
FontSize="10" Foreground="White" Margin="0,2,0,0" TextWrapping="Wrap"/>
|
||||
<TextBlock Text="{Binding AdResult.DcLatencyText}"
|
||||
FontSize="11" Foreground="#555" Margin="0,1,0,0" FontWeight="SemiBold"/>
|
||||
FontSize="11" Foreground="White" Margin="0,1,0,0" FontWeight="SemiBold"/>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Grid.Row="1" Grid.Column="1" Margin="16,8,0,0">
|
||||
<TextBlock Text="AD Site" FontWeight="SemiBold" FontSize="12" Foreground="#555"/>
|
||||
<TextBlock Text="AD Site" FontWeight="SemiBold" FontSize="12" Foreground="White"/>
|
||||
<Border Background="{Binding AdResult.DcSite, Converter={StaticResource StatusToBrush}}"
|
||||
CornerRadius="3" Padding="8,3" Margin="0,2,0,0">
|
||||
<TextBlock Text="{Binding AdResult.DcSite}"
|
||||
FontSize="12" Foreground="White" FontWeight="SemiBold"/>
|
||||
</Border>
|
||||
<TextBlock Text="{Binding AdResult.DcSiteName}"
|
||||
FontSize="10" Foreground="#888" Margin="0,2,0,0"/>
|
||||
FontSize="10" Foreground="White" Margin="0,2,0,0"/>
|
||||
</StackPanel>
|
||||
|
||||
<Grid Grid.Row="2" Grid.ColumnSpan="2" Margin="0,8,0,0">
|
||||
@@ -549,25 +562,25 @@
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<StackPanel Grid.Column="0">
|
||||
<TextBlock Text="SYSVOL Share" FontWeight="SemiBold" FontSize="12" Foreground="#555"/>
|
||||
<TextBlock Text="SYSVOL Share" FontWeight="SemiBold" FontSize="12" Foreground="White"/>
|
||||
<Border Background="{Binding AdResult.SysvolShare, Converter={StaticResource StatusToBrush}}"
|
||||
CornerRadius="3" Padding="8,3" Margin="0,2,0,0">
|
||||
<TextBlock Text="{Binding AdResult.SysvolShare}"
|
||||
FontSize="12" Foreground="White" FontWeight="SemiBold"/>
|
||||
</Border>
|
||||
<TextBlock Text="{Binding AdResult.SysvolShareText}"
|
||||
FontSize="10" Foreground="#888" Margin="0,2,0,0" TextWrapping="Wrap"/>
|
||||
FontSize="10" Foreground="White" Margin="0,2,0,0" TextWrapping="Wrap"/>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Grid.Column="1" Margin="16,0,0,0">
|
||||
<TextBlock Text="Netlogon Share" FontWeight="SemiBold" FontSize="12" Foreground="#555"/>
|
||||
<TextBlock Text="Netlogon Share" FontWeight="SemiBold" FontSize="12" Foreground="White"/>
|
||||
<Border Background="{Binding AdResult.NetlogonShare, Converter={StaticResource StatusToBrush}}"
|
||||
CornerRadius="3" Padding="8,3" Margin="0,2,0,0">
|
||||
<TextBlock Text="{Binding AdResult.NetlogonShare}"
|
||||
FontSize="12" Foreground="White" FontWeight="SemiBold"/>
|
||||
</Border>
|
||||
<TextBlock Text="{Binding AdResult.NetlogonShareText}"
|
||||
FontSize="10" Foreground="#888" Margin="0,2,0,0" TextWrapping="Wrap"/>
|
||||
FontSize="10" Foreground="White" Margin="0,2,0,0" TextWrapping="Wrap"/>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
|
||||
@@ -578,22 +591,22 @@
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<StackPanel Grid.Column="0">
|
||||
<TextBlock Text="Trust Relationship" FontWeight="SemiBold" FontSize="12" Foreground="#555"/>
|
||||
<TextBlock Text="Trust Relationship" FontWeight="SemiBold" FontSize="12" Foreground="White"/>
|
||||
<Border Background="{Binding AdResult.TrustRelationship, Converter={StaticResource StatusToBrush}}"
|
||||
CornerRadius="3" Padding="8,3" Margin="0,2,0,0">
|
||||
<TextBlock Text="{Binding AdResult.TrustRelationship}"
|
||||
FontSize="12" Foreground="White" FontWeight="SemiBold"/>
|
||||
</Border>
|
||||
<TextBlock Text="{Binding AdResult.TrustRelationshipText}"
|
||||
FontSize="10" Foreground="#888" Margin="0,2,0,0" TextWrapping="Wrap"/>
|
||||
FontSize="10" Foreground="White" Margin="0,2,0,0" TextWrapping="Wrap"/>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Grid.Column="1" Margin="16,0,0,0">
|
||||
<TextBlock Text="GPO Last Apply" FontWeight="SemiBold" FontSize="12" Foreground="#555"/>
|
||||
<TextBlock FontSize="11" Foreground="#555" Margin="0,2,0,0">
|
||||
<TextBlock Text="GPO Last Apply" FontWeight="SemiBold" FontSize="12" Foreground="White"/>
|
||||
<TextBlock FontSize="11" Foreground="White" Margin="0,2,0,0">
|
||||
<Run Text="User: " FontWeight="SemiBold"/><Run Text="{Binding AdResult.LastUserGpoTime}"/>
|
||||
</TextBlock>
|
||||
<TextBlock FontSize="11" Foreground="#555" Margin="0,1,0,0">
|
||||
<TextBlock FontSize="11" Foreground="White" Margin="0,1,0,0">
|
||||
<Run Text="Computer: " FontWeight="SemiBold"/><Run Text="{Binding AdResult.LastComputerGpoTime}"/>
|
||||
</TextBlock>
|
||||
</StackPanel>
|
||||
|
||||
BIN
Binary file not shown.
@@ -0,0 +1,6 @@
|
||||
$file = 'E:\Geekanarchy\Net-Apps\EnterpriseTroubleshooter\EnterpriseTroubleshooter.sln\EnterpriseTroubleshooter\Views\ShellView.xaml'
|
||||
$content = Get-Content $file -Raw
|
||||
$content = $content.Replace('Foreground="#555"', 'Foreground="White"')
|
||||
$content = $content.Replace('Foreground="#888"', 'Foreground="White"')
|
||||
$content = $content.Replace('Foreground="#999"', 'Foreground="White"')
|
||||
Set-Content $file -Value $content -NoNewline
|
||||
Reference in new issue
Block a user