1
0

dont modify fields if form is read only

This commit is contained in:
2024-05-04 08:50:45 +03:00
parent fe1995b630
commit 621efb2b95
4 changed files with 41 additions and 17 deletions

View File

@@ -14,6 +14,10 @@ namespace Lab2
/// </summary> /// </summary>
private bool _save; private bool _save;
/// <summary> /// <summary>
/// Доступность полей формы
/// </summary>
private readonly bool _readOnly;
/// <summary>
/// Газонокосилка для редактирования /// Газонокосилка для редактирования
/// </summary> /// </summary>
private Lawnmower _lawnmower; private Lawnmower _lawnmower;
@@ -34,13 +38,14 @@ namespace Lab2
_materialComboBox.ItemsSource = Enum.GetValues(typeof(Material)); _materialComboBox.ItemsSource = Enum.GetValues(typeof(Material));
_lawnmower = parLawnmower; _lawnmower = parLawnmower;
_readOnly = parReadOnly;
DataContext = _lawnmower; DataContext = _lawnmower;
Title = $"Lawnmower {_lawnmower.Id}"; Title = $"Lawnmower {_lawnmower.Id}";
SetEnabled(!parReadOnly); SetEnabled(!_readOnly);
if (parReadOnly) if (_readOnly)
_saveButton.Content = "Ok"; _saveButton.Content = "Ok";
} }
@@ -89,7 +94,8 @@ namespace Lab2
try try
{ {
SyncData(); if (!_readOnly)
SyncData();
DialogResult = true; DialogResult = true;
} }
catch (Exception ex) catch (Exception ex)

View File

@@ -14,9 +14,13 @@ namespace Lab2
/// </summary> /// </summary>
private bool _save; private bool _save;
/// <summary> /// <summary>
/// Доступность полей формы
/// </summary>
private readonly bool _readOnly;
/// <summary>
/// Ножницы для редактирования /// Ножницы для редактирования
/// </summary> /// </summary>
private Scissors _scissors; private readonly Scissors _scissors;
/// <summary> /// <summary>
/// Конструктор /// Конструктор
@@ -34,13 +38,14 @@ namespace Lab2
_materialComboBox.ItemsSource = Enum.GetValues(typeof(Material)); _materialComboBox.ItemsSource = Enum.GetValues(typeof(Material));
_scissors = parScissors; _scissors = parScissors;
_readOnly = parReadOnly;
DataContext = _scissors; DataContext = _scissors;
Title = $"Scissors {_scissors.Id}"; Title = $"Scissors {_scissors.Id}";
SetEnabled(!parReadOnly); SetEnabled(!_readOnly);
if (parReadOnly) if (_readOnly)
_saveButton.Content = "Ok"; _saveButton.Content = "Ok";
} }
@@ -89,7 +94,8 @@ namespace Lab2
try try
{ {
SyncData(); if (!_readOnly)
SyncData();
DialogResult = true; DialogResult = true;
} }
catch (Exception ex) catch (Exception ex)

View File

@@ -14,9 +14,13 @@ namespace Lab2
/// </summary> /// </summary>
private bool _save; private bool _save;
/// <summary> /// <summary>
/// Доступность полей формы
/// </summary>
private readonly bool _readOnly;
/// <summary>
/// Коса для редактирования /// Коса для редактирования
/// </summary> /// </summary>
private Scythe _scythe; private readonly Scythe _scythe;
/// <summary> /// <summary>
/// Конструктор /// Конструктор
@@ -35,13 +39,14 @@ namespace Lab2
_bladeTypeComboBox.ItemsSource = Enum.GetValues(typeof(BladeType)); _bladeTypeComboBox.ItemsSource = Enum.GetValues(typeof(BladeType));
_scythe = parScythe; _scythe = parScythe;
_readOnly = parReadOnly;
DataContext = _scythe; DataContext = _scythe;
Title = $"Scythe {_scythe.Id}"; Title = $"Scythe {_scythe.Id}";
SetEnabled(!parReadOnly); SetEnabled(!_readOnly);
if (parReadOnly) if (_readOnly)
_saveButton.Content = "Ok"; _saveButton.Content = "Ok";
} }
@@ -90,7 +95,8 @@ namespace Lab2
try try
{ {
SyncData(); if (!_readOnly)
SyncData();
DialogResult = true; DialogResult = true;
} }
catch (Exception ex) catch (Exception ex)

View File

@@ -14,6 +14,10 @@ namespace Lab2
/// </summary> /// </summary>
private bool _save; private bool _save;
/// <summary> /// <summary>
/// Доступность полей формы
/// </summary>
private readonly bool _readOnly;
/// <summary>
/// Триммер для редактирования /// Триммер для редактирования
/// </summary> /// </summary>
private readonly Trimmer _trimmer; private readonly Trimmer _trimmer;
@@ -35,13 +39,14 @@ namespace Lab2
_modeComboBox.ItemsSource = Enum.GetValues(typeof(TrimmerMode)); _modeComboBox.ItemsSource = Enum.GetValues(typeof(TrimmerMode));
_trimmer = parTrimmer; _trimmer = parTrimmer;
_readOnly = parReadOnly;
DataContext = _trimmer; DataContext = _trimmer;
Title = $"Trimmer {_trimmer.Id}"; Title = $"Trimmer {_trimmer.Id}";
SetEnabled(!parReadOnly); SetEnabled(!_readOnly);
if (parReadOnly) if (_readOnly)
_saveButton.Content = "Ok"; _saveButton.Content = "Ok";
} }
@@ -90,7 +95,8 @@ namespace Lab2
try try
{ {
SyncData(); if (!_readOnly)
SyncData();
DialogResult = true; DialogResult = true;
} }
catch (Exception ex) catch (Exception ex)