diff --git a/Elwig/Windows/AdministrationWindow.cs b/Elwig/Windows/AdministrationWindow.cs
index 5fe2dff..96aaa8f 100644
--- a/Elwig/Windows/AdministrationWindow.cs
+++ b/Elwig/Windows/AdministrationWindow.cs
@@ -484,115 +484,115 @@ namespace Elwig.Windows {
UpdateButtons();
}
- protected void ComboBox_SelectionChanged(object sender, RoutedEventArgs evt) {
+ protected void ComboBox_SelectionChanged(object sender, RoutedEventArgs? evt) {
UpdateComboBox((Control)sender);
}
- protected void IntegerInput_TextChanged(object sender, TextChangedEventArgs evt) {
+ protected void IntegerInput_TextChanged(object sender, TextChangedEventArgs? evt) {
// FIXME
InputTextChanged((TextBox)sender, Validator.CheckInteger);
}
- protected void DecimalInput_TextChanged(object sender, TextChangedEventArgs evt) {
+ protected void DecimalInput_TextChanged(object sender, TextChangedEventArgs? evt) {
// FIXME
InputTextChanged((TextBox)sender, Validator.CheckDecimal);
}
- protected void PartialDateInput_TextChanged(object sender, TextChangedEventArgs evt) {
+ protected void PartialDateInput_TextChanged(object sender, TextChangedEventArgs? evt) {
InputTextChanged((TextBox)sender, Validator.CheckPartialDate);
}
- protected void PartialDateInput_LostFocus(object sender, RoutedEventArgs evt) {
+ protected void PartialDateInput_LostFocus(object sender, RoutedEventArgs? evt) {
InputLostFocus((TextBox)sender, Validator.CheckPartialDate);
}
- protected void DateInput_TextChanged(object sender, TextChangedEventArgs evt) {
+ protected void DateInput_TextChanged(object sender, TextChangedEventArgs? evt) {
InputTextChanged((TextBox)sender, Validator.CheckDate);
}
- protected void DateInput_LostFocus(object sender, RoutedEventArgs evt) {
+ protected void DateInput_LostFocus(object sender, RoutedEventArgs? evt) {
InputLostFocus((TextBox)sender, Validator.CheckDate);
}
- protected void TimeInput_TextChanged(object sender, TextChangedEventArgs evt) {
+ protected void TimeInput_TextChanged(object sender, TextChangedEventArgs? evt) {
InputTextChanged((TextBox)sender, Validator.CheckTime);
}
- protected void TimeInput_LostFocus(object sender, RoutedEventArgs evt) {
+ protected void TimeInput_LostFocus(object sender, RoutedEventArgs? evt) {
InputLostFocus((TextBox)sender, Validator.CheckTime);
}
- protected async void PlzInput_TextChanged(object sender, TextChangedEventArgs evt) {
+ protected async void PlzInput_TextChanged(object sender, TextChangedEventArgs? evt) {
var plz = (TextBox)sender;
InputTextChanged(plz, Validator.CheckPlz);
if ("PLZ".Equals(plz.Tag))
await UpdatePlz(plz, GetPlzOrtInput(plz));
}
- protected async void PlzInput_LostFocus(object sender, RoutedEventArgs evt) {
+ protected async void PlzInput_LostFocus(object sender, RoutedEventArgs? evt) {
var plz = (TextBox)sender;
InputLostFocus(plz, Validator.CheckPlz);
if ("PLZ".Equals(plz.Tag))
await UpdatePlz(plz, GetPlzOrtInput(plz));
}
- protected void EmailAddressInput_TextChanged(object sender, TextChangedEventArgs evt) {
+ protected void EmailAddressInput_TextChanged(object sender, TextChangedEventArgs? evt) {
InputTextChanged((TextBox)sender, Validator.CheckEmailAddress);
}
- protected void EmailAddressInput_LostFocus(object sender, RoutedEventArgs evt) {
+ protected void EmailAddressInput_LostFocus(object sender, RoutedEventArgs? evt) {
InputLostFocus((TextBox)sender, Validator.CheckEmailAddress);
}
- protected void PhoneNrInput_TextChanged(object sender, TextChangedEventArgs evt) {
+ protected void PhoneNrInput_TextChanged(object sender, TextChangedEventArgs? evt) {
InputTextChanged((TextBox)sender, Validator.CheckPhoneNumber);
}
- protected void PhoneNrInput_LostFocus(object sender, RoutedEventArgs evt) {
+ protected void PhoneNrInput_LostFocus(object sender, RoutedEventArgs? evt) {
InputLostFocus((TextBox)sender, Validator.CheckPhoneNumber);
}
- protected void IbanInput_TextChanged(object sender, TextChangedEventArgs evt) {
+ protected void IbanInput_TextChanged(object sender, TextChangedEventArgs? evt) {
InputTextChanged((TextBox)sender, Validator.CheckIban);
}
- protected void IbanInput_LostFocus(object sender, RoutedEventArgs evt) {
+ protected void IbanInput_LostFocus(object sender, RoutedEventArgs? evt) {
InputLostFocus((TextBox)sender, Validator.CheckIban);
}
- protected void BicInput_TextChanged(object sender, TextChangedEventArgs evt) {
+ protected void BicInput_TextChanged(object sender, TextChangedEventArgs? evt) {
InputTextChanged((TextBox)sender, Validator.CheckBic);
}
- protected void BicInput_LostFocus(object sender, RoutedEventArgs evt) {
+ protected void BicInput_LostFocus(object sender, RoutedEventArgs? evt) {
InputLostFocus((TextBox)sender, Validator.CheckBic);
}
- protected void UstIdNrInput_TextChanged(object sender, TextChangedEventArgs evt) {
+ protected void UstIdNrInput_TextChanged(object sender, TextChangedEventArgs? evt) {
InputTextChanged((TextBox)sender, Validator.CheckUstIdNr);
}
- protected void UstIdNrInput_LostFocus(object sender, RoutedEventArgs evt) {
+ protected void UstIdNrInput_LostFocus(object sender, RoutedEventArgs? evt) {
InputLostFocus((TextBox)sender, Validator.CheckUstIdNr);
}
- protected void LfbisNrInput_TextChanged(object sender, TextChangedEventArgs evt) {
+ protected void LfbisNrInput_TextChanged(object sender, TextChangedEventArgs? evt) {
InputTextChanged((TextBox)sender, Validator.CheckLfbisNr);
}
- protected void LfbisNrInput_LostFocus(object sender, RoutedEventArgs evt) {
+ protected void LfbisNrInput_LostFocus(object sender, RoutedEventArgs? evt) {
InputLostFocus((TextBox)sender, Validator.CheckLfbisNr);
}
- protected void UpperCaseInput_TextChanged(object sender, TextChangedEventArgs evt) {
+ protected void UpperCaseInput_TextChanged(object sender, TextChangedEventArgs? evt) {
InputTextChanged((TextBox)sender, Validator.CheckUpperCase);
}
- protected void UpperCaseInput_LostFocus(object sender, RoutedEventArgs evt) {
+ protected void UpperCaseInput_LostFocus(object sender, RoutedEventArgs? evt) {
InputLostFocus((TextBox)sender, Validator.CheckUpperCase);
}
- protected void AreaComTypeDetailsButton_Click(object sender, RoutedEventArgs evt) {
+ protected void AreaComTypeDetailsButton_Click(object sender, RoutedEventArgs? evt) {
App.FocusBaseDataAreaComType();
}
}
diff --git a/Elwig/Windows/DeliveryAdminWindow.xaml b/Elwig/Windows/DeliveryAdminWindow.xaml
index 69df874..6f7cf39 100644
--- a/Elwig/Windows/DeliveryAdminWindow.xaml
+++ b/Elwig/Windows/DeliveryAdminWindow.xaml
@@ -411,11 +411,11 @@
+ KeyUp="Input_KeyUp"/>
+ KeyUp="Input_KeyUp"/>
diff --git a/Elwig/Windows/DeliveryAdminWindow.xaml.cs b/Elwig/Windows/DeliveryAdminWindow.xaml.cs
index d6a220f..5fcb39d 100644
--- a/Elwig/Windows/DeliveryAdminWindow.xaml.cs
+++ b/Elwig/Windows/DeliveryAdminWindow.xaml.cs
@@ -624,7 +624,11 @@ namespace Elwig.Windows {
private void MgNrInput_TextChanged(object sender, TextChangedEventArgs evt) {
var valid = InputTextChanged((TextBox)sender, Validator.CheckMgNr);
+ var text = MgNrInput.Text;
+ var caret = MgNrInput.CaretIndex;
ControlUtils.SelectItemWithPk(MemberInput, valid ? ViewModel.MgNr : null);
+ MgNrInput.Text = text;
+ MgNrInput.CaretIndex = caret;
}
private void MgNrInput_LostFocus(object sender, RoutedEventArgs evt) {
@@ -638,10 +642,16 @@ namespace Elwig.Windows {
ViewModel.MemberAddress = m?.FullAddress;
if (m == null) {
UnsetDefaultValue(WineKgInput);
- WineKgInput.SelectedIndex = 0;
+ WineKgInput.SelectedItem = null;
+ ComboBox_SelectionChanged(WineKgInput, null);
} else {
- ControlUtils.SelectItemWithPk(WineKgInput, m.DefaultKgNr);
+ if (m.DefaultKgNr is int kgnr) {
+ ControlUtils.SelectItemWithPk(WineKgInput, kgnr);
+ } else {
+ WineKgInput.SelectedItem = null;
+ }
SetDefaultValue(WineKgInput);
+ ComboBox_SelectionChanged(WineKgInput, null);
}
}
@@ -1214,6 +1224,7 @@ namespace Elwig.Windows {
using var ctx = new AppDbContext();
if (!GetInputValid(GradationKmwInput)) {
UnsetDefaultValue(WineQualityLevelInput);
+ ComboBox_SelectionChanged(WineQualityLevelInput, null);
WineQualityLevelInput.ItemsSource = ctx.WineQualityLevels.Where(q => q.QualId == "WEI").ToList();
return;
}
@@ -1271,14 +1282,6 @@ namespace Elwig.Windows {
GradationKmwInput.Text += ",0";
}
- private void AttributeInput_SelectionChanged(object sender, SelectionChangedEventArgs evt) {
-
- }
-
- private void CultivationInput_SelectionChanged(object sender, SelectionChangedEventArgs evt) {
-
- }
-
private void ModifiersInput_SelectionChanged(object sender, SelectionChangedEventArgs evt) {
if (!IsEditing && !IsCreating) return;
var mod = ModifiersInput.SelectedItems.Cast();
@@ -1291,6 +1294,12 @@ namespace Elwig.Windows {
ModifiersInput.SelectedItems.Remove(r);
});
}
+ } else if (App.Client.IsWinzerkeller) {
+ if (mod.Any(m => m.Name.Contains("Lesewagen"))) {
+ ViewModel.IsLesewagen = true;
+ } else {
+ ViewModel.IsLesewagen = false;
+ }
}
}
@@ -1302,8 +1311,14 @@ namespace Elwig.Windows {
if (App.Client.IsMatzen) {
var kl = mod.Where(m => m.Name.StartsWith("Klasse ")).Select(m => m.ModId).LastOrDefault("A")[0];
if (lw) kl++; else kl--;
- var newKl = source.Where(m => m.ModId == kl.ToString()).FirstOrDefault();
+ var newKl = source.FirstOrDefault(m => m.ModId == kl.ToString());
if (newKl != null) ModifiersInput.SelectedItems.Add(newKl);
+ } else if (App.Client.IsWinzerkeller) {
+ if (lw && !mod.Any(m => m.Name.Contains("Lesewagen"))) {
+ ModifiersInput.SelectedItems.Add(source.First(m => m.Name.Contains("Lesewagen")));
+ } else if (!lw && mod.Any(m => m.Name.Contains("Lesewagen"))) {
+ ModifiersInput.SelectedItems.Remove(mod.First(m => m.Name.Contains("Lesewagen")));
+ }
}
CheckBox_Changed(sender, evt);
}
@@ -1314,6 +1329,7 @@ namespace Elwig.Windows {
if (qual == null || kg == null) {
WineOriginInput.IsEnabled = (IsEditing || IsCreating);
UnsetDefaultValue(WineOriginInput);
+ ComboBox_SelectionChanged(WineOriginInput, null);
return;
}
WineOriginInput.IsEnabled = false;