commit 2b61a1084ab07d06b996788e3242c0af22f33e3d
parent c33a05bbe92dd2c4489449f5a54e54d530e5267f
Author: Minerva_juppiter <ryouturn@gmail.com>
Date: Sun, 31 Mar 2024 22:38:09 +0900
テキストボックスがnullである許容によって、入力時にテキストボックスを一時的に空にできない状態を解消した。
Diffstat:
2 files changed, 19 insertions(+), 20 deletions(-)
diff --git a/MainWindow.xaml b/MainWindow.xaml
@@ -1,4 +1,4 @@
-<Window x:Name="MainWindow" x:Class="BusynessNotification.MainWindow"
+<Window x:Class="BusynessNotification.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
@@ -27,17 +27,17 @@
<Button x:Name="SaveSettingButton" Content="Save" Grid.Row="3" Grid.Column="1" HorizontalAlignment="Center" d:LayoutOverrides="Width" Click="SaveSettingButton_Click"/>
<Slider x:Name="CPUSlider" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" Width="150" ValueChanged="CPUSlider_ValueChanged" Maximum="100" SmallChange="1"/>
- <TextBox x:Name="TextBox_CPUSlider" Grid.Column="1" Grid.Row="0" HorizontalAlignment="Right" TextChanged="TextBox_CPUSlider_TextChanged" VerticalAlignment="Center" Text="0" MaxLines="4" MaxLength="3"/>
+ <TextBox x:Name="TextBox_CPUSlider" Grid.Column="1" Grid.Row="0" HorizontalAlignment="Right" TextChanged="TextBox_CPUSlider_TextChanged" VerticalAlignment="Center" Text="0" MaxLines="4" MaxLength="3" Margin="0,0,5,0"/>
<TextBlock x:Name="sec_CPU" Grid.Column="2" TextWrapping="Wrap" Text="sec." IsEnabled="False" IsHitTestVisible="False" HorizontalAlignment="Right" VerticalAlignment="Center" Margin="0,0,50,0"/>
<TextBox x:Name="CPUSecTextBox" Grid.Column="2" TextWrapping="Wrap" VerticalAlignment="Center" d:LayoutOverrides="TopPosition, BottomPosition" Text="10" UndoLimit="4" HorizontalAlignment="Center" TextAlignment="Center" TextChanged="CPUSecTextBox_TextChanged" MaxLines="1" MaxLength="3"/>
<Slider x:Name="MemorySlider" Grid.Column="1" HorizontalAlignment="Center" Width="150" Grid.Row="1" d:LayoutOverrides="Height" ValueChanged="MemorySlider_ValueChanged" Maximum="100" VerticalAlignment="Center" SmallChange="1"/>
- <TextBox x:Name="TextBox_MemorySlider" Grid.Column="1" TextChanged="TextBox_MemorySlider_TextChanged" Grid.Row="1" d:LayoutOverrides="Width, Height" Text="0" VerticalAlignment="Center" MaxLength="3" MaxLines="1" HorizontalAlignment="Right"/>
+ <TextBox x:Name="TextBox_MemorySlider" Grid.Column="1" TextChanged="TextBox_MemorySlider_TextChanged" Grid.Row="1" d:LayoutOverrides="Width, Height" Text="0" VerticalAlignment="Center" MaxLength="3" MaxLines="1" HorizontalAlignment="Right" Margin="0,0,5,0"/>
<TextBlock x:Name="sec_Memory" Grid.Column="2" TextWrapping="Wrap" Text="sec." IsEnabled="False" IsHitTestVisible="False" Grid.Row="1" HorizontalAlignment="Right" VerticalAlignment="Center" Margin="0,0,50,0"/>
<TextBox x:Name="MemorySecTextBox" Grid.Column="2" TextWrapping="Wrap" Text="10" UndoLimit="4" HorizontalAlignment="Center" TextAlignment="Center" d:LayoutOverrides="Height" Grid.Row="1" TextChanged="MemorySecTextBox_TextChanged" MaxLines="1" MaxLength="3" VerticalAlignment="Center"/>
<Slider x:Name="DiskSlider" Grid.Column="1" HorizontalAlignment="Center" Width="150" Grid.Row="2" d:LayoutOverrides="Height" ValueChanged="DiskSlider_ValueChanged" Maximum="100" VerticalAlignment="Center" SmallChange="1"/>
- <TextBox x:Name="TextBox_DiskSlider" Grid.Column="1" HorizontalAlignment="Right" Grid.Row="2" TextWrapping="Wrap" Text="0" VerticalAlignment="Center" d:LayoutOverrides="TopPosition, BottomPosition" TextChanged="TextBox_DiskSlider_TextChanged" MaxLength="3" MaxLines="2"/>
+ <TextBox x:Name="TextBox_DiskSlider" Grid.Column="1" HorizontalAlignment="Right" Grid.Row="2" TextWrapping="Wrap" Text="0" VerticalAlignment="Center" d:LayoutOverrides="TopPosition, BottomPosition" TextChanged="TextBox_DiskSlider_TextChanged" MaxLength="3" MaxLines="2" Margin="0,0,5,0"/>
<TextBlock x:Name="sec_Disk" Grid.Column="2" TextWrapping="Wrap" Text="sec." IsEnabled="False" IsHitTestVisible="False" Grid.Row="2" HorizontalAlignment="Right" VerticalAlignment="Center" Margin="0,0,50,0"/>
<TextBox x:Name="DiskSecTextBox" Grid.Column="2" TextWrapping="Wrap" Text="10" UndoLimit="4" HorizontalAlignment="Center" TextAlignment="Center" Grid.Row="2" d:LayoutOverrides="Height" TextChanged="DiskSecTextBox_TextChanged" MaxLength="3" MaxLines="1" VerticalAlignment="Center"/>
diff --git a/MainWindow.xaml.cs b/MainWindow.xaml.cs
@@ -88,40 +88,37 @@ namespace BusynessNotification
{
SliderCPU = InputNormalizerToDouble(TextBox_CPUSlider.Text, SliderCPU);
TextBox_CPUSlider.Text = SliderCPU.ToString();
+ CPUSlider.Value = SliderCPU;
}
private void TextBox_MemorySlider_TextChanged(object sender, TextChangedEventArgs e)
{
SliderMemory = InputNormalizerToDouble(TextBox_MemorySlider.Text, SliderMemory);
TextBox_MemorySlider.Text = SliderMemory.ToString();
+ MemorySlider.Value = SliderMemory;
}
private void TextBox_DiskSlider_TextChanged(object sender, TextChangedEventArgs e)
{
- SliderDisk = InputNormalizerToDouble(TextBox_CPUSlider.Text.ToString(), SliderDisk);
- TextBox_CPUSlider.Text = SliderDisk.ToString();
+ SliderDisk = InputNormalizerToDouble(TextBox_DiskSlider.Text.ToString(), SliderDisk);
+ TextBox_DiskSlider.Text = SliderDisk.ToString();
+ DiskSlider.Value = SliderDisk;
}
private void CPUSlider_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
{
- int CPUvalue = (int)e.NewValue;
- TextBox_CPUSlider.Text = CPUvalue.ToString();
- CPUSlider.Value = CPUvalue;
- SliderCPU = CPUvalue;
+ SliderCPU = CPUSlider.Value;
+ TextBox_CPUSlider.Text = SliderCPU.ToString();
}
private void MemorySlider_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
{
- int Memoryvalue = (int)e.NewValue;
- TextBox_MemorySlider.Text = Memoryvalue.ToString();
- MemorySlider.Value = Memoryvalue;
- SliderMemory = Memoryvalue;
+ SliderMemory = MemorySlider.Value;
+ TextBox_MemorySlider.Text = SliderMemory.ToString();
}
private void DiskSlider_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
{
- int Diskvalue = (int)e.NewValue;
- TextBox_DiskSlider.Text = Diskvalue.ToString();
- DiskSlider.Value = Diskvalue;
- SliderDisk = Diskvalue;
+ SliderDisk = DiskSlider.Value;
+ TextBox_DiskSlider.Text = SliderDisk.ToString();
}
private void CPUSecTextBox_TextChanged(object sender, TextChangedEventArgs e)
@@ -185,6 +182,9 @@ namespace BusynessNotification
static double InputNormalizerToDouble(string input,double oldValue)
{
+ if(input == null || input == ""){
+ return oldValue;
+ }
bool NormalizationCan = double.TryParse(input, out double value);
if (NormalizationCan == false || value < 0 || value > 100)
{
@@ -194,8 +194,7 @@ namespace BusynessNotification
MessageBoxImage icon = MessageBoxImage.Warning;
System.Windows.MessageBox.Show(messageBoxText, caption, button, icon);
- value = oldValue;
- return value;
+ return oldValue;
}
else
{