1
0

use bindings instead of manual sync

This commit is contained in:
2024-05-04 09:02:52 +03:00
parent ef3579b82c
commit b2c19b0aaf
4 changed files with 28 additions and 20 deletions

View File

@@ -1,6 +1,8 @@
using System;
using System.Globalization;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
namespace Lab2
{
@@ -67,11 +69,11 @@ namespace Lab2
/// </summary>
private void SyncData()
{
_lawnmower.Name = _nameTextBox.Text;
_lawnmower.Material = (Material)_materialComboBox.SelectedItem;
_lawnmower.Weight = Convert.ToDouble(_weightTextBox.Text, CultureInfo.CurrentCulture);
_lawnmower.Power = Convert.ToUInt32(_powerTextBox.Text);
_lawnmower.FuelCapacity = (float)Convert.ToDouble(_fuelСapacityTextBox.Text, CultureInfo.CurrentCulture);
BindingOperations.GetBindingExpression(_nameTextBox, TextBox.TextProperty)?.UpdateSource();
BindingOperations.GetBindingExpression(_materialComboBox, ComboBox.TextProperty)?.UpdateSource();
BindingOperations.GetBindingExpression(_weightTextBox, TextBox.TextProperty)?.UpdateSource();
BindingOperations.GetBindingExpression(_powerTextBox, TextBox.TextProperty)?.UpdateSource();
BindingOperations.GetBindingExpression(_fuelСapacityTextBox, TextBox.TextProperty)?.UpdateSource();
}
/// <summary>

View File

@@ -1,6 +1,8 @@
using System;
using System.Globalization;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
namespace Lab2
{
@@ -67,11 +69,11 @@ namespace Lab2
/// </summary>
private void SyncData()
{
_scissors.Name = _nameTextBox.Text;
_scissors.Material = (Material)_materialComboBox.SelectedItem;
_scissors.Weight = Convert.ToDouble(_weightTextBox.Text, CultureInfo.CurrentCulture);
_scissors.HandleLength = (float)Convert.ToDouble(_handleLengthTextBox.Text, CultureInfo.CurrentCulture);
_scissors.BladeSize = Convert.ToDouble(_bladeSizeTextBox.Text, CultureInfo.CurrentCulture);
BindingOperations.GetBindingExpression(_nameTextBox, TextBox.TextProperty)?.UpdateSource();
BindingOperations.GetBindingExpression(_materialComboBox, ComboBox.TextProperty)?.UpdateSource();
BindingOperations.GetBindingExpression(_weightTextBox, TextBox.TextProperty)?.UpdateSource();
BindingOperations.GetBindingExpression(_handleLengthTextBox, TextBox.TextProperty)?.UpdateSource();
BindingOperations.GetBindingExpression(_bladeSizeTextBox, TextBox.TextProperty)?.UpdateSource();
}
/// <summary>

View File

@@ -1,6 +1,8 @@
using System;
using System.Globalization;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
namespace Lab2
{
@@ -68,11 +70,11 @@ namespace Lab2
/// </summary>
private void SyncData()
{
_scythe.Name = _nameTextBox.Text;
_scythe.Material = (Material)_materialComboBox.SelectedItem;
_scythe.Weight = Convert.ToDouble(_weightTextBox.Text, CultureInfo.CurrentCulture);
_scythe.HandleLength = (float)Convert.ToDouble(_handleLengthTextBox.Text, CultureInfo.CurrentCulture);
_scythe.BladeType = (BladeType)_bladeTypeComboBox.SelectedItem;
BindingOperations.GetBindingExpression(_nameTextBox, TextBox.TextProperty)?.UpdateSource();
BindingOperations.GetBindingExpression(_materialComboBox, ComboBox.TextProperty)?.UpdateSource();
BindingOperations.GetBindingExpression(_weightTextBox, TextBox.TextProperty)?.UpdateSource();
BindingOperations.GetBindingExpression(_handleLengthTextBox, TextBox.TextProperty)?.UpdateSource();
BindingOperations.GetBindingExpression(_bladeTypeComboBox, ComboBox.TextProperty)?.UpdateSource();
}
/// <summary>

View File

@@ -1,6 +1,8 @@
using System;
using System.Globalization;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
namespace Lab2
{
@@ -68,11 +70,11 @@ namespace Lab2
/// </summary>
private void SyncData()
{
_trimmer.Name = _nameTextBox.Text;
_trimmer.Material = (Material)_materialComboBox.SelectedItem;
_trimmer.Weight = Convert.ToDouble(_weightTextBox.Text, CultureInfo.CurrentCulture);
_trimmer.Power = Convert.ToUInt32(_powerTextBox.Text);
_trimmer.Mode = (TrimmerMode)_modeComboBox.SelectedItem;
BindingOperations.GetBindingExpression(_nameTextBox, TextBox.TextProperty)?.UpdateSource();
BindingOperations.GetBindingExpression(_materialComboBox, ComboBox.TextProperty)?.UpdateSource();
BindingOperations.GetBindingExpression(_weightTextBox, TextBox.TextProperty)?.UpdateSource();
BindingOperations.GetBindingExpression(_powerTextBox, TextBox.TextProperty)?.UpdateSource();
BindingOperations.GetBindingExpression(_modeComboBox, ComboBox.TextProperty)?.UpdateSource();
}
/// <summary>