tbf/TBF/Rig/DataEntry/StandartCameraPurchaseOrder/CycleBeginningForm.cs

2500 lines
84 KiB
C#

///
/// Copyright (c) 2015 Sensus Metering Systems
///
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Linq;
using System.Windows.Forms;
using System.Windows.Forms.VisualStyles;
using Common;
using FluentNHibernate.Conventions;
using log4net;
using NHibernate.Criterion;
using Results.Entities;
using TBF.Resources;
namespace TBF.Rig.DataEntry.StandartCameraPurchaseOrder
{
public partial class CycleBeginningForm : Form, GenericDevices.IHasCompleted
{
private static readonly ILog log = LogManager.GetLogger(typeof(CycleBeginningForm));
/// <summary> Number of water meters </summary>
public readonly int WaterMetersCount;
/// To be retrieved after the form is closed
public string PurchaseOrder;
private List<PurchaseOrder> purchaseOrderListExample;
public string[] SNText;
public bool[] Disabled;
/// Set to 'true' when the form closes
public bool Completed
{
get { return completed; }
}
bool completed;
/// <summary> Number of text boxes for serial numbers </summary>
int textBoxesCount;
Label[] labels;
ComboBox[] comboBoxes;
CheckBox[] checkBoxes;
ComboBox[] comboNumbers;
IList<ComboBox> enabledComboBoxes;
IList<ComboBox> enabledComboBoxesN;
/// <summary> Parameterless constructor for common functionality </summary>
public CycleBeginningForm()
{
InitializeComponent();
ControlBox = false;
textBoxesCount = 48;
labels = new Label[]
{
label1, label2, label3, label4, label5, label6, label7, label8, label9, label10,
label11, label12, label13, label14, label15, label16, label17, label18, label19, label20,
label21, label22, label23, label24, label25, label26, label27, label28, label29, label30,
label31, label32, label33, label34, label35, label36, label37, label38, label39, label40,
label41, label42, label43, label44, label45, label46, label47, label48,
};
comboBoxes = new ComboBox[]
{
comboBox1, comboBox2, comboBox3, comboBox4, comboBox5, comboBox6, comboBox7, comboBox8, comboBox9,
comboBox10,
comboBox11, comboBox12, comboBox13, comboBox14, comboBox15, comboBox16, comboBox17, comboBox18,
comboBox19, comboBox20,
comboBox21, comboBox22, comboBox23, comboBox24, comboBox25, comboBox26, comboBox27, comboBox28,
comboBox29, comboBox30,
comboBox31, comboBox32, comboBox33, comboBox34, comboBox35, comboBox36, comboBox37, comboBox38,
comboBox39, comboBox40,
comboBox41, comboBox42, comboBox43, comboBox44, comboBox45, comboBox46, comboBox47, comboBox48,
};
checkBoxes = new CheckBox[]
{
checkBox1, checkBox2, checkBox3, checkBox4, checkBox5, checkBox6, checkBox7, checkBox8, checkBox9,
checkBox10,
checkBox11, checkBox12, checkBox13, checkBox14, checkBox15, checkBox16, checkBox17, checkBox18,
checkBox19, checkBox20,
checkBox21, checkBox22, checkBox23, checkBox24, checkBox25, checkBox26, checkBox27, checkBox28,
checkBox29, checkBox30,
checkBox31, checkBox32, checkBox33, checkBox34, checkBox35, checkBox36, checkBox37, checkBox38,
checkBox39, checkBox40,
checkBox41, checkBox42, checkBox43, checkBox44, checkBox45, checkBox46, checkBox47, checkBox48,
};
enabledComboBoxes = new List<ComboBox>();
comboNumbers = new ComboBox[]
{
comboBoxN1, comboBoxN2, comboBoxN3, comboBoxN4, comboBoxN5, comboBoxN6, comboBoxN7, comboBoxN8,
comboBoxN9,
comboBoxN10,
comboBoxN11, comboBoxN12, comboBoxN13, comboBoxN14, comboBoxN15, comboBoxN16, comboBoxN17, comboBoxN18,
comboBoxN19, comboBoxN20,
comboBoxN21, comboBoxN22, comboBoxN23, comboBoxN24, comboBoxN25, comboBoxN26, comboBoxN27, comboBoxN28,
comboBoxN29, comboBoxN30,
comboBoxN31, comboBoxN32, comboBoxN33, comboBoxN34, comboBoxN35, comboBoxN36, comboBoxN37, comboBoxN38,
comboBoxN39, comboBoxN40,
comboBoxN41, comboBoxN42, comboBoxN43, comboBoxN44, comboBoxN45, comboBoxN46, comboBoxN47, comboBoxN48,
};
enabledComboBoxesN = new List<ComboBox>();
completed = false;
StartForceCloseHandler();
}
/// <summary>
/// Constructor
/// </summary>
/// <param name="waterMetersCount">Number of text boxes for serial numbers</param>
public CycleBeginningForm(int waterMetersCount, bool hideOrder)
: this()
{
this.WaterMetersCount = waterMetersCount;
SNText = new string[WaterMetersCount];
Disabled = new bool[WaterMetersCount];
int lineSize = (WaterMetersCount <= 6) ? WaterMetersCount : TBF.Data.LineSize;
int MaxHight = this.Height;
ShuffleTextBoxes(TBF.Data.WMsCount, lineSize, ref MaxHight);
if (hideOrder) orderGroupBox.Visible = false;
this.Height = Math.Max(MaxHight + 60, 400);
}
/// <summary>
/// Make sure the layout of labels/text boxes on the screen
/// corresponds to the layout of watermeters of the test bench.
/// </summary>
/// <param name="wmsCount">Number of watermeters</param>
/// <param name="lineSize">Number of watermeters in one line</param>
void ShuffleTextBoxes(int wmsCount, int lineSize, ref int MaxHight)
{
MaxHight = 0;
if (wmsCount < textBoxesCount && lineSize > 0)
{
int nrLines = (wmsCount + lineSize - 1) / lineSize;
int gap = (textBoxesCount - wmsCount) / nrLines;
int dest = 0;
for (int l = 0; l < nrLines; l++)
{
for (int i = 0; i < lineSize; i++)
{
labels[dest] = labels[l * lineSize + l * gap + i];
comboBoxes[dest] = comboBoxes[l * lineSize + l * gap + i];
checkBoxes[dest] = checkBoxes[l * lineSize + l * gap + i];
comboNumbers[dest] = comboNumbers[l * lineSize + l * gap + i];
MaxHight = Math.Max(comboBoxes[dest].Location.Y, MaxHight);
dest++;
}
}
textBoxesCount = wmsCount;
}
}
private void CycleBeginningForm_Load(object sender, EventArgs e)
{
Localize();
CreateTooltipToInfoAboutLock();
if (orderGroupBox.Visible)
{
LoadPurchaseOrderTables();
LoadPurchaseOrder();
//PrepareOrderCombo(orderComboBox);
}
for (int i = 0; i < textBoxesCount; i++)
{
if (Program.LocalSettings.LastSNTextsCount == textBoxesCount)
{
comboBoxes[i].Items.Add((Program.LocalSettings.LastSNTexts[i] == null)
? string.Empty
: Program.LocalSettings.LastSNTexts[i]);
}
InitialiseItemsForComboInRange(i, comboNumbers, textBoxesCount);
labels[i].Visible = comboBoxes[i].Visible = checkBoxes[i].Visible = comboNumbers[i].Visible = true;
enabledComboBoxes.Add(comboBoxes[i]);
enabledComboBoxesN.Add(comboNumbers[i]);
}
foreach (ComboBox cbxN in enabledComboBoxesN)
{
cbxN.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.comboBoxNX_KeyPress);
}
}
private void InitialiseItemsForComboInRange(int i, ComboBox[] implementComboBoxes, int toMaxRange)
{
log.Debug($"Init combo number item: {i}");
ComboBox comboBoxToFill = implementComboBoxes[i];
comboBoxToFill.Items.Clear();
for (int j = 0; j < toMaxRange; j++)
{
comboBoxToFill.Items.Add(j + 1);
}
comboBoxToFill.SelectedItem = i + 1;
//comboBoxToFill.Text = (i+1).ToString();
}
void Localize()
{
Text = Strings.Data;
orderGroupBox.Text = Strings.Project_number;
for (int i = 0; i < textBoxesCount; i++)
{
labels[i].Text = Strings.Serial_number + " " + (i + 1).ToString();
}
okButton.Text = Strings.OkBtnText;
clearButton.Text = Strings.ClearBtnText;
}
/// <summary>
/// Load Purchase order combo box items from the LocalSettings PurchaseOrderHistory array
/// </summary>
/// <param name="orderComboBox">Puchase order ComboBox</param>
void PrepareOrderCombo(ComboBox orderComboBox)
{
for (int i = 0; i < Program.LocalSettings.PurchaseOrderHistoryCount; i++)
{
orderComboBox.Items.Add(Program.LocalSettings.PurchaseOrderHistory[i]);
}
if (orderComboBox.Items.Count > 0)
{
orderComboBox.Text = orderComboBox.Items[0].ToString();
}
}
private void okButton_Click(object sender, EventArgs e)
{
if (orderGroupBox.Visible)
{
PurchaseOrder = orderComboBox.Text;
Program.LocalSettings.UpdateHistory(orderComboBox.Text,
ref Program.LocalSettings.PurchaseOrderHistory
#if FUZHOU_150 || FUZHOU_300
, 20
#endif
);
}
Program.LocalSettings.LastSNTexts = SNText;
for (int i = 0; i < Math.Min(WaterMetersCount, textBoxesCount); i++)
{
SNText[i] = comboBoxes[i].Text;
Disabled[i] = !checkBoxes[i].Checked;
}
completed = true;
Close();
}
/// <summary>
/// When one combo box is updated using drop-down menu, all combo boxes
/// are updated by this function.
/// </summary>
private void UpdateAllCombos()
{
for (int i = 0; i < Math.Min(WaterMetersCount, textBoxesCount); i++)
{
//? for what is this last seteed into diaog
//comboBoxes[i].Text = Program.LocalSettings.LastSNTexts[i];
checkBoxes[i].Checked = !string.IsNullOrEmpty(comboBoxes[i].Text);
}
}
private void clearButton_Click(object sender, EventArgs e)
{
for (int i = 0; i < Math.Min(WaterMetersCount, textBoxesCount); i++)
{
comboBoxes[i].Text = string.Empty;
checkBoxes[i].Checked = false;
}
lastComboBoxSerialNo = 0;
EnableOrderCheckBox(true);
}
private void comboBox1_TextChanged(object sender, EventArgs e)
{
checkBox1.Checked = true;
}
private void comboBox2_TextChanged(object sender, EventArgs e)
{
checkBox2.Checked = true;
}
private void comboBox3_TextChanged(object sender, EventArgs e)
{
checkBox3.Checked = true;
}
private void comboBox4_TextChanged(object sender, EventArgs e)
{
checkBox4.Checked = true;
}
private void comboBox5_TextChanged(object sender, EventArgs e)
{
checkBox5.Checked = true;
}
private void comboBox6_TextChanged(object sender, EventArgs e)
{
checkBox6.Checked = true;
}
private void comboBox7_TextChanged(object sender, EventArgs e)
{
checkBox7.Checked = true;
}
private void comboBox8_TextChanged(object sender, EventArgs e)
{
checkBox8.Checked = true;
}
private void comboBox9_TextChanged(object sender, EventArgs e)
{
checkBox9.Checked = true;
}
private void comboBox10_TextChanged(object sender, EventArgs e)
{
checkBox10.Checked = true;
}
private void comboBox11_TextChanged(object sender, EventArgs e)
{
checkBox11.Checked = true;
}
private void comboBox12_TextChanged(object sender, EventArgs e)
{
checkBox12.Checked = true;
}
private void comboBox13_TextChanged(object sender, EventArgs e)
{
checkBox13.Checked = true;
}
private void comboBox14_TextChanged(object sender, EventArgs e)
{
checkBox14.Checked = true;
}
private void comboBox15_TextChanged(object sender, EventArgs e)
{
checkBox15.Checked = true;
}
private void comboBox16_TextChanged(object sender, EventArgs e)
{
checkBox16.Checked = true;
}
private void comboBox17_TextChanged(object sender, EventArgs e)
{
checkBox17.Checked = true;
}
private void comboBox18_TextChanged(object sender, EventArgs e)
{
checkBox18.Checked = true;
}
private void comboBox19_TextChanged(object sender, EventArgs e)
{
checkBox19.Checked = true;
}
private void comboBox20_TextChanged(object sender, EventArgs e)
{
checkBox20.Checked = true;
}
private void comboBox21_TextChanged(object sender, EventArgs e)
{
checkBox21.Checked = true;
}
private void comboBox22_TextChanged(object sender, EventArgs e)
{
checkBox22.Checked = true;
}
private void comboBox23_TextChanged(object sender, EventArgs e)
{
checkBox23.Checked = true;
}
private void comboBox24_TextChanged(object sender, EventArgs e)
{
checkBox24.Checked = true;
}
private void comboBox25_TextChanged(object sender, EventArgs e)
{
checkBox25.Checked = true;
}
private void comboBox26_TextChanged(object sender, EventArgs e)
{
checkBox26.Checked = true;
}
private void comboBox27_TextChanged(object sender, EventArgs e)
{
checkBox27.Checked = true;
}
private void comboBox28_TextChanged(object sender, EventArgs e)
{
checkBox28.Checked = true;
}
private void comboBox29_TextChanged(object sender, EventArgs e)
{
checkBox29.Checked = true;
}
private void comboBox30_TextChanged(object sender, EventArgs e)
{
checkBox30.Checked = true;
}
private void comboBox31_TextChanged(object sender, EventArgs e)
{
checkBox31.Checked = true;
}
private void comboBox32_TextChanged(object sender, EventArgs e)
{
checkBox32.Checked = true;
}
private void comboBox33_TextChanged(object sender, EventArgs e)
{
checkBox33.Checked = true;
}
private void comboBox34_TextChanged(object sender, EventArgs e)
{
checkBox34.Checked = true;
}
private void comboBox35_TextChanged(object sender, EventArgs e)
{
checkBox35.Checked = true;
}
private void comboBox36_TextChanged(object sender, EventArgs e)
{
checkBox36.Checked = true;
}
private void comboBox37_TextChanged(object sender, EventArgs e)
{
checkBox37.Checked = true;
}
private void comboBox38_TextChanged(object sender, EventArgs e)
{
checkBox38.Checked = true;
}
private void comboBox39_TextChanged(object sender, EventArgs e)
{
checkBox39.Checked = true;
}
private void comboBox40_TextChanged(object sender, EventArgs e)
{
checkBox40.Checked = true;
}
private void comboBox41_TextChanged(object sender, EventArgs e)
{
checkBox41.Checked = true;
}
private void comboBox42_TextChanged(object sender, EventArgs e)
{
checkBox42.Checked = true;
}
private void comboBox43_TextChanged(object sender, EventArgs e)
{
checkBox43.Checked = true;
}
private void comboBox44_TextChanged(object sender, EventArgs e)
{
checkBox44.Checked = true;
}
private void comboBox45_TextChanged(object sender, EventArgs e)
{
checkBox45.Checked = true;
}
private void comboBox46_TextChanged(object sender, EventArgs e)
{
checkBox46.Checked = true;
}
private void comboBox47_TextChanged(object sender, EventArgs e)
{
checkBox47.Checked = true;
}
private void comboBox48_TextChanged(object sender, EventArgs e)
{
checkBox48.Checked = true;
}
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox1.Text.Equals(comboBox1.Items[0])) UpdateAllCombos();
}
}
private void comboBox2_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox2.Text.Equals(comboBox2.Items[0])) UpdateAllCombos();
}
}
private void comboBox3_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox3.Text.Equals(comboBox3.Items[0])) UpdateAllCombos();
}
}
private void comboBox4_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox4.Text.Equals(comboBox4.Items[0])) UpdateAllCombos();
}
}
private void comboBox5_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox5.Text.Equals(comboBox5.Items[0])) UpdateAllCombos();
}
}
private void comboBox6_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox6.Text.Equals(comboBox6.Items[0])) UpdateAllCombos();
}
}
private void comboBox7_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox7.Text.Equals(comboBox7.Items[0])) UpdateAllCombos();
}
}
private void comboBox8_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox8.Text.Equals(comboBox8.Items[0])) UpdateAllCombos();
}
}
private void comboBox9_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox9.Text.Equals(comboBox9.Items[0])) UpdateAllCombos();
}
}
private void comboBox10_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox10.Text.Equals(comboBox10.Items[0])) UpdateAllCombos();
}
}
private void comboBox11_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox11.Text.Equals(comboBox11.Items[0])) UpdateAllCombos();
}
}
private void comboBox12_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox12.Text.Equals(comboBox12.Items[0])) UpdateAllCombos();
}
}
private void comboBox13_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox13.Text.Equals(comboBox13.Items[0])) UpdateAllCombos();
}
}
private void comboBox14_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox14.Text.Equals(comboBox14.Items[0])) UpdateAllCombos();
}
}
private void comboBox15_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox15.Text.Equals(comboBox15.Items[0])) UpdateAllCombos();
}
}
private void comboBox16_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox16.Text.Equals(comboBox16.Items[0])) UpdateAllCombos();
}
}
private void comboBox17_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox17.Text.Equals(comboBox17.Items[0])) UpdateAllCombos();
}
}
private void comboBox18_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox18.Text.Equals(comboBox18.Items[0])) UpdateAllCombos();
}
}
private void comboBox19_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox19.Text.Equals(comboBox19.Items[0])) UpdateAllCombos();
}
}
private void comboBox20_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox20.Text.Equals(comboBox20.Items[0])) UpdateAllCombos();
}
}
private void comboBox21_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox21.Text.Equals(comboBox21.Items[0])) UpdateAllCombos();
}
}
private void comboBox22_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox22.Text.Equals(comboBox22.Items[0])) UpdateAllCombos();
}
}
private void comboBox23_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox23.Text.Equals(comboBox23.Items[0])) UpdateAllCombos();
}
}
private void comboBox24_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox24.Text.Equals(comboBox24.Items[0])) UpdateAllCombos();
}
}
private void comboBox25_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox25.Text.Equals(comboBox25.Items[0])) UpdateAllCombos();
}
}
private void comboBox26_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox26.Text.Equals(comboBox26.Items[0])) UpdateAllCombos();
}
}
private void comboBox27_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox27.Text.Equals(comboBox27.Items[0])) UpdateAllCombos();
}
}
private void comboBox28_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox28.Text.Equals(comboBox28.Items[0])) UpdateAllCombos();
}
}
private void comboBox29_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox29.Text.Equals(comboBox29.Items[0])) UpdateAllCombos();
}
}
private void comboBox30_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox30.Text.Equals(comboBox30.Items[0])) UpdateAllCombos();
}
}
private void comboBox31_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox31.Text.Equals(comboBox31.Items[0])) UpdateAllCombos();
}
}
private void comboBox32_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox32.Text.Equals(comboBox32.Items[0])) UpdateAllCombos();
}
}
private void comboBox33_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox33.Text.Equals(comboBox33.Items[0])) UpdateAllCombos();
}
}
private void comboBox34_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox34.Text.Equals(comboBox34.Items[0])) UpdateAllCombos();
}
}
private void comboBox35_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox35.Text.Equals(comboBox35.Items[0])) UpdateAllCombos();
}
}
private void comboBox36_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox36.Text.Equals(comboBox36.Items[0])) UpdateAllCombos();
}
}
private void comboBox37_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox37.Text.Equals(comboBox37.Items[0])) UpdateAllCombos();
}
}
private void comboBox38_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox38.Text.Equals(comboBox38.Items[0])) UpdateAllCombos();
}
}
private void comboBox39_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox39.Text.Equals(comboBox39.Items[0])) UpdateAllCombos();
}
}
private void comboBox40_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox40.Text.Equals(comboBox40.Items[0])) UpdateAllCombos();
}
}
private void comboBox41_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox41.Text.Equals(comboBox41.Items[0])) UpdateAllCombos();
}
}
private void comboBox42_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox42.Text.Equals(comboBox42.Items[0])) UpdateAllCombos();
}
}
private void comboBox43_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox43.Text.Equals(comboBox43.Items[0])) UpdateAllCombos();
}
}
private void comboBox44_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox44.Text.Equals(comboBox44.Items[0])) UpdateAllCombos();
}
}
private void comboBox45_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox45.Text.Equals(comboBox45.Items[0])) UpdateAllCombos();
}
}
private void comboBox46_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox46.Text.Equals(comboBox46.Items[0])) UpdateAllCombos();
}
}
private void comboBox47_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox47.Text.Equals(comboBox47.Items[0])) UpdateAllCombos();
}
}
private void comboBox48_SelectedIndexChanged(object sender, EventArgs e)
{
if (Program.LocalSettings.LastSNTextsCount == WaterMetersCount)
{
if (comboBox48.Text.Equals(comboBox48.Items[0])) UpdateAllCombos();
}
}
#region Forced close handling
public void StartForceCloseHandler()
{
UiBridge.Bridge.CloseModelessFormHandler += delegate(object sender, EventArgs args)
{
if (InvokeRequired)
{
Invoke(new EventHandler<EventArgs>(OnForceClose), sender, args);
}
else OnForceClose(sender, args);
};
}
private void OnForceClose(object sender, EventArgs args)
{
DialogResult = DialogResult.Cancel;
Close();
}
#endregion
/// <summary>
/// Process a key press within any enabled text boxe enabledComboBoxes
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
/// <param name="currentFocusOwner">TextBox control which received the event</param>
private void ProcKeyPress(object sender, KeyPressEventArgs e, ComboBox currentFocusOwner)
{
if (e.KeyChar == '+')
{
/// Process '+' key ..... Form completed
okButton_Click(sender, e);
}
if (e.KeyChar == '\r')
{
/// Process <enter> key ..... Next text field
if (enabledComboBoxes.Count < 2) return; /// There is just one enabled textbox
for (int i = 0; i < enabledComboBoxes.Count; i++)
{
if (enabledComboBoxes[i] == currentFocusOwner)
{
/// Change focus to the next enabled text box
enabledComboBoxes[(i + 1) % enabledComboBoxes.Count].Focus();
return;
}
}
}
}
private void comboBox1_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox1);
}
private void comboBox2_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox2);
}
private void comboBox3_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox3);
}
private void comboBox4_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox4);
}
private void comboBox5_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox5);
}
private void comboBox6_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox6);
}
private void comboBox7_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox7);
}
private void comboBox8_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox8);
}
private void comboBox9_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox9);
}
private void comboBox10_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox10);
}
private void comboBox11_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox11);
}
private void comboBox12_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox12);
}
private void comboBox13_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox13);
}
private void comboBox14_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox14);
}
private void comboBox15_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox15);
}
private void comboBox16_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox16);
}
private void comboBox17_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox17);
}
private void comboBox18_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox18);
}
private void comboBox19_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox19);
}
private void comboBox20_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox20);
}
private void comboBox21_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox21);
}
private void comboBox22_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox22);
}
private void comboBox23_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox23);
}
private void comboBox24_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox24);
}
private void comboBox25_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox25);
}
private void comboBox26_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox26);
}
private void comboBox27_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox27);
}
private void comboBox28_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox28);
}
private void comboBox29_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox29);
}
private void comboBox30_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox30);
}
private void comboBox31_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox31);
}
private void comboBox32_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox32);
}
private void comboBox33_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox33);
}
private void comboBox34_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox34);
}
private void comboBox35_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox35);
}
private void comboBox36_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox36);
}
private void comboBox37_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox37);
}
private void comboBox38_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox38);
}
private void comboBox39_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox39);
}
private void comboBox40_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox40);
}
private void comboBox41_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox41);
}
private void comboBox42_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox42);
}
private void comboBox43_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox43);
}
private void comboBox44_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox44);
}
private void comboBox45_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox45);
}
private void comboBox46_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox46);
}
private void comboBox47_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox47);
}
private void comboBox48_KeyPress(object sndr, KeyPressEventArgs e)
{
ProcKeyPress(sndr, e, comboBox48);
}
void PerformActionComboShuffle(ComboBox selComboBox)
{
if (selComboBox != null && selComboBox.Visible == true)
{
// Use helper method to extract number from comboBox's name
int? initialSelectedValue = ExtractNumberFromComboBoxName(selComboBox);
if (!initialSelectedValue.HasValue)
{
return;
}
string itemText = selComboBox.SelectedItem?.ToString();
if (itemText == null)
{
itemText = selComboBox.Text;
}
log.DebugFormat("Selected Combobox: {0} initialSelectedValue: {1} value: {2}", selComboBox.Name,
initialSelectedValue, itemText);
if (int.TryParse(itemText, out int selectedNumber))
{
if (selectedNumber == initialSelectedValue)
{
return;
}
// Substitute minNumber and maxNumber with actual values
int minNumber = 0, maxNumber = 50;
if (selectedNumber >= minNumber && selectedNumber <= maxNumber)
{
// Call changeSerialNo method if the number falls within the range
ChangeSerialNo(initialSelectedValue, selectedNumber);
// Reset the selection
selComboBox.SelectedItem = initialSelectedValue;
}
}
else
{
Console.WriteLine("The selected item is not a number.");
}
}
}
private void ChangeSerialNo(int? thisComboBoxNumber, int destComboBoxNo)
{
// changeSerialNo implementation
log.Debug($"Changed ComboBox this: {thisComboBoxNumber}");
if (thisComboBoxNumber == null)
{
return;
}
int indexOfThisComboBox = (int)thisComboBoxNumber - 1;
int indexDestComboBoxNo = destComboBoxNo - 1;
ComboBox thisComboBox = null;
if (indexOfThisComboBox >= 0 && indexOfThisComboBox < textBoxesCount)
{
thisComboBox = comboBoxes[indexOfThisComboBox];
}
ComboBox destComboBox = null;
if (indexDestComboBoxNo >= 0 && indexDestComboBoxNo < textBoxesCount)
{
destComboBox = comboBoxes[indexDestComboBoxNo];
}
if (destComboBox != null && thisComboBox != null)
{
string thisComboBoxValue = thisComboBox.Text;
string destComboBoxValue = destComboBox.Text;
log.DebugFormat("ChangeSerialNo(thisComboBoxNumber:{0}, destComboBoxNo{1}) has shufle this:{2} to:{3}",
thisComboBoxNumber, destComboBoxNo, thisComboBoxValue, destComboBoxValue);
if (thisComboBoxValue != null && destComboBoxValue != null)
{
UpdateComboBox(thisComboBox, destComboBoxValue);
UpdateComboBox(destComboBox, thisComboBoxValue);
}
}
else
{
log.Debug("Some of the sources are missing");
}
}
private void UpdateComboBox(ComboBox comboBox, string comboBoxValue)
{
if (string.IsNullOrEmpty(comboBox.Text)) // Check if destComboBox text is empty
{
comboBox.SelectedItem = null; // Deselect any selected item
}
comboBox.Text = comboBoxValue; // Set the Text property
// Update the SelectedIndex based on the new Text
int index = comboBox.FindStringExact(comboBoxValue);
comboBox.SelectedIndex = index; // Set the SelectedIndex to the found index, or -1 if not found
}
private int? ExtractNumberFromComboBoxName(ComboBox comboBox)
{
// Extract number from comboBox's name
/*var numberString = System.Text.RegularExpressions.Regex.Match(comboBox.Name, @"\d+").Value;
if (int.TryParse(numberString, out int extractedNumber))
{
return extractedNumber;
}
else
{
Console.WriteLine("Failed to get number from comboBox name.");
// Return null if it fails to parse the number
return null;
}*/
int counter = 0;
foreach (ComboBox combo in enabledComboBoxesN)
{
counter++;
if (comboBox == combo)
{
return counter;
}
}
return null;
}
private void buttonChooseBox_Click(object sender, EventArgs e)
{
Choose();
EnableOrderCheckBox(false);
}
private void EnableOrderCheckBox(bool enable)
{
if (orderComboBox.Text != null && !orderComboBox.Text.IsEmpty())
{
orderComboBox.Enabled = enable;
//set Tooltip on
toolTip.Active = !enable;
}
else if (orderComboBox.Text != null && orderComboBox.Text.IsEmpty())
{
orderComboBox.Enabled = true;
toolTip.Active = false;
}
}
private void LoadPurchaseOrderTables()
{
/// Load the list of components from the database
using (var session = Results.DB.CreateSession())
{
/// Search for 'BenchInfo' component
IList<PurchaseOrder> orders = session.QueryOver<PurchaseOrder>().List();
if (orders != null)
{
CopyPurchaseOrderList(ref purchaseOrderListExample, orders);
}
}
}
private void CopyPurchaseOrderList(ref List<PurchaseOrder> purchaseOrders, IList<PurchaseOrder> orders)
{
purchaseOrders?.Clear();
if (purchaseOrders == null)
{
purchaseOrders = new List<PurchaseOrder>();
}
foreach (var order in orders)
{
PurchaseOrder orderCopy = new PurchaseOrder(order.Name);
foreach (PurchaseBox box in order.PurchaseBoxList)
{
PurchaseBox boxCopy = new PurchaseBox(box.BoxNo, box.PurchaseOrder);
foreach (PurchaseWaterMeterData waterMeter in box.PurchaseWaterMeterDataList)
{
PurchaseWaterMeterData waterMeterCopy =
new PurchaseWaterMeterData(waterMeter.SerialNo, boxCopy);
boxCopy.PurchaseWaterMeterDataList.Add(waterMeterCopy);
}
orderCopy.PurchaseBoxList.Add(boxCopy);
}
purchaseOrders.Add(orderCopy);
}
}
private void InitExamplePuchaseOrder()
{
purchaseOrderListExample = new List<PurchaseOrder>();
//------------------------------------
PurchaseOrder purchaseOrder = new PurchaseOrder("Swindon-001");
PurchaseBox purchaseBox = new PurchaseBox("Box-01-1001", 1, purchaseOrder);
purchaseBox.PurchaseWaterMeterDataList.Add(new PurchaseWaterMeterData("SN 1324_56-9", purchaseBox));
purchaseBox.PurchaseWaterMeterDataList.Add(new PurchaseWaterMeterData("SN 1324_56-8", purchaseBox));
purchaseOrder.PurchaseBoxList.Add(purchaseBox);
purchaseBox = new PurchaseBox("Box-01-1002", 1, purchaseOrder);
purchaseBox.PurchaseWaterMeterDataList.Add(new PurchaseWaterMeterData("SN 1324_59-1", purchaseBox));
purchaseOrder.PurchaseBoxList.Add(purchaseBox);
purchaseBox = new PurchaseBox("Box-01-1003", 1, purchaseOrder);
purchaseBox.PurchaseWaterMeterDataList.Add(new PurchaseWaterMeterData("SN 1324_79-1", purchaseBox));
purchaseOrder.PurchaseBoxList.Add(purchaseBox);
purchaseBox = new PurchaseBox("Box-01-1004", 1, purchaseOrder);
purchaseBox.PurchaseWaterMeterDataList.Add(new PurchaseWaterMeterData("SN 1324_89-1", purchaseBox));
purchaseOrder.PurchaseBoxList.Add(purchaseBox);
purchaseOrderListExample.Add(purchaseOrder);
//------------------------------------
purchaseOrder = new PurchaseOrder("Swindon-002");
purchaseBox = new PurchaseBox("Box-02-1001", 1, purchaseOrder);
purchaseBox.PurchaseWaterMeterDataList.Add(new PurchaseWaterMeterData("SN 1325_56-9", purchaseBox));
purchaseBox.PurchaseWaterMeterDataList.Add(new PurchaseWaterMeterData("SN 1325_56-8", purchaseBox));
purchaseOrder.PurchaseBoxList.Add(purchaseBox);
purchaseBox = new PurchaseBox("Box-02-1002", 1, purchaseOrder);
purchaseBox.PurchaseWaterMeterDataList.Add(new PurchaseWaterMeterData("SN 1325_59-1", purchaseBox));
purchaseBox.PurchaseWaterMeterDataList.Add(new PurchaseWaterMeterData("SN 1325_59-2", purchaseBox));
purchaseBox.PurchaseWaterMeterDataList.Add(new PurchaseWaterMeterData("SN 1325_59-3", purchaseBox));
purchaseBox.PurchaseWaterMeterDataList.Add(new PurchaseWaterMeterData("SN 1325_59-4", purchaseBox));
purchaseOrder.PurchaseBoxList.Add(purchaseBox);
purchaseBox = new PurchaseBox("Box-02-1003", 1, purchaseOrder);
purchaseBox.PurchaseWaterMeterDataList.Add(new PurchaseWaterMeterData("SN 1325_79-1", purchaseBox));
purchaseOrder.PurchaseBoxList.Add(purchaseBox);
purchaseBox = new PurchaseBox("Box-02-1004", 1, purchaseOrder);
purchaseBox.PurchaseWaterMeterDataList.Add(new PurchaseWaterMeterData("SN 1325_89-1", purchaseBox));
purchaseOrder.PurchaseBoxList.Add(purchaseBox);
purchaseOrderListExample.Add(purchaseOrder);
//------------------------------------
purchaseOrder = new PurchaseOrder("Swindon-003");
purchaseBox = new PurchaseBox("Box-03-12001", 1, purchaseOrder);
purchaseBox.PurchaseWaterMeterDataList.Add(new PurchaseWaterMeterData("SN 1326_56-9", purchaseBox));
purchaseBox.PurchaseWaterMeterDataList.Add(new PurchaseWaterMeterData("SN 1326_56-8", purchaseBox));
purchaseOrder.PurchaseBoxList.Add(purchaseBox);
purchaseBox = new PurchaseBox("Box-03-1102", 1, purchaseOrder);
purchaseBox.PurchaseWaterMeterDataList.Add(new PurchaseWaterMeterData("SN 1326_60-1", purchaseBox));
purchaseBox.PurchaseWaterMeterDataList.Add(new PurchaseWaterMeterData("SN 1326_60-2", purchaseBox));
purchaseBox.PurchaseWaterMeterDataList.Add(new PurchaseWaterMeterData("SN 1326_60-3", purchaseBox));
purchaseBox.PurchaseWaterMeterDataList.Add(new PurchaseWaterMeterData("SN 1326_60-4", purchaseBox));
purchaseOrder.PurchaseBoxList.Add(purchaseBox);
//---
purchaseOrderListExample.Add(purchaseOrder);
}
private void LoadPurchaseOrder()
{
orderComboBox.Items.Clear();
if (purchaseOrderListExample != null)
{
foreach (PurchaseOrder pOrder in purchaseOrderListExample)
{
orderComboBox.Items.Add(pOrder.Name);
}
LoadPurchaseBox("");
}
}
private void LoadPurchaseBox(String choosenOrder)
{
purchaseBoxComboBox.Items.Clear();
if (choosenOrder.IsEmpty())
{
return;
}
var purchaseBoxes = purchaseOrderListExample
.Where(pOrder => pOrder.Name == choosenOrder)
.SelectMany(pOrder => pOrder.PurchaseBoxList)
.Select(pBox => pBox.BoxNo);
foreach (var boxNo in purchaseBoxes)
{
purchaseBoxComboBox.Items.Add(boxNo);
}
}
private int lastComboBoxSerialNo = 0;
private int countedFreeBoxes = 0;
private void LoadChoosenSerialNumbers(String choosenOrder, String choosenBox)
{
if (choosenOrder == null || choosenOrder.IsEmpty() ||
choosenBox == null || choosenBox.IsEmpty())
{
return;
}
log.Debug($"Selected order: {choosenOrder} box: {choosenBox}");
IEnumerable<string> serialNumbers = purchaseOrderListExample
.Where(pOrder => pOrder.Name == choosenOrder)
.SelectMany(pOrder => pOrder.PurchaseBoxList)
.Where(pBox => pBox.BoxNo == choosenBox)
.SelectMany(pBox => pBox.PurchaseWaterMeterDataList)
.Select(pWM => pWM.SerialNo);
//enable behaviour type
bool addOnEndOnly = false;
int countOfFreeBoxes =
addOnEndOnly ? (enabledComboBoxes.Count - (LastOccupiedBox() + 1)) : CountFreeBoxes();
if (countOfFreeBoxes < serialNumbers.Count())
{
MessageBox.Show(this, "We have more Serial Numbers in box as we have free positions!", "Warning",
MessageBoxButtons.OK, MessageBoxIcon.Warning);
return;
}
string noImplementedSerialNumbers = "";
if (!addOnEndOnly)
{
lastComboBoxSerialNo = -1;
}
else
{
lastComboBoxSerialNo = (LastOccupiedBox() + 1);
}
//copy only serial numbers without repeat
foreach (var serialNumber in serialNumbers)
{
bool canICopy = CanICopy(serialNumber);
if (canICopy)
{
if (addOnEndOnly)
{
if (lastComboBoxSerialNo >= 0 || lastComboBoxSerialNo < enabledComboBoxes.Count)
{
comboBoxes[lastComboBoxSerialNo].Text = serialNumber;
lastComboBoxSerialNo++;
}
}
else
{
int iNextFreeNumber = NextFreeBox(lastComboBoxSerialNo);
if (iNextFreeNumber >= 0 || iNextFreeNumber < enabledComboBoxes.Count)
{
comboBoxes[iNextFreeNumber].Text = serialNumber;
lastComboBoxSerialNo = iNextFreeNumber;
}
}
}
else
{
noImplementedSerialNumbers += (noImplementedSerialNumbers.IsEmpty() ? "" : ", ") + serialNumber;
}
}
if (!noImplementedSerialNumbers.IsEmpty())
{
MessageBox.Show(this,
string.Format("The following serial numbers were not implemented: {0}", noImplementedSerialNumbers),
"Serial Numbers repeating!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
/// <summary>
/// Experimental zoom method
/// </summary>
/// <param name="scaleFactor"> number to multiply size (1.2 for 20%)</param>
private void ApplyZoom(float scaleFactor)
{
// Resize the form
this.Size = new Size((int)(this.Width * scaleFactor), (int)(this.Height * scaleFactor));
// Resize and reposition all controls
foreach (Control control in this.Controls)
{
if (control.Visible)
{
control.Location = new Point((int)(control.Left * scaleFactor), (int)(control.Top * scaleFactor));
control.Size = new Size((int)(control.Width * scaleFactor), (int)(control.Height * scaleFactor));
control.Font = new Font(control.Font.FontFamily, control.Font.Size * scaleFactor);
}
}
}
private bool CanICopy(string serialNumber)
{
bool canICopy = true;
for (int i = 0; i < comboBoxes.Length; i++)
{
string text = comboBoxes[i].Text;
if (string.IsNullOrEmpty(text))
{
continue;
}
else if (text == serialNumber)
{
//OK I can copy
canICopy = false;
break;
}
}
return canICopy;
}
private int CountFreeBoxes()
{
int iAllFreeComboboxes = 0;
for (int i = 0; i < enabledComboBoxes.Count; i++)
{
if (string.IsNullOrEmpty(enabledComboBoxes[i].Text))
{
iAllFreeComboboxes++;
}
}
return iAllFreeComboboxes;
}
private int LastOccupiedBox()
{
int iLastOccupiedBox = -1;
for (int i = 0; i < enabledComboBoxes.Count; i++)
{
if (!string.IsNullOrEmpty(enabledComboBoxes[i].Text))
{
iLastOccupiedBox = i;
}
}
return iLastOccupiedBox;
}
private int NextFreeBox(int iLookingFromItem)
{
int iNextFreeItem = -1;
for (int i = iLookingFromItem + 1; i < enabledComboBoxes.Count; i++)
{
if (i == iLookingFromItem + 1)
{
iNextFreeItem = i;
}
if (string.IsNullOrEmpty(enabledComboBoxes[i].Text))
{
iNextFreeItem = i;
break;
}
}
if (iNextFreeItem < 0)
{
iNextFreeItem = 0;
}
return iNextFreeItem;
}
private void RemoveLoadSerialNumbers(IEnumerable<string> serialNumbers, string choosenOrder, string choosenBox)
{
IEnumerable<PurchaseBox> boxes = purchaseOrderListExample
.Where(pOrder => pOrder.Name == choosenOrder)
.SelectMany(pOrder => pOrder.PurchaseBoxList)
.Where(pBox => pBox.BoxNo == choosenBox)
.Select(pBox => pBox);
foreach (var box in boxes)
{
//remove or mark added list to declare no give all again
//box.PurchaseWaterMeterDataList.RemoveAll(pWM => serialNumbers.Contains(pWM.SerialNo));
}
}
private void orderComboBox_SelectedIndexChanged(object sender, EventArgs e)
{
ComboBox orederComboBox = sender as ComboBox;
if (orederComboBox != null && orederComboBox.SelectedItem != null)
{
string order = orederComboBox.SelectedItem.ToString();
log.Debug($"Selected order: {order}");
LoadPurchaseBox(order);
purchaseBoxComboBox.SelectedItem = null;
purchaseBoxComboBox.Text = "";
}
}
private void purchaseBoxComboBox_SelectedIndexChanged(object sender, EventArgs e)
{
buttonChooseBox.Enabled = (orderComboBox != null &&
(orderComboBox.SelectedItem != null ||
!string.IsNullOrEmpty(orderComboBox.Text)
)
);
buttonChooseBox.Enabled = buttonChooseBox.Enabled && (purchaseBoxComboBox != null &&
(purchaseBoxComboBox.SelectedItem != null ||
!string.IsNullOrEmpty(purchaseBoxComboBox.Text)
)
);
}
private void Choose()
{
string boxStr = purchaseBoxComboBox?.SelectedItem?.ToString();
string order = orderComboBox?.SelectedItem?.ToString();
LoadChoosenSerialNumbers(order, boxStr);
}
/// <summary>
/// Process a key press within any enabled text boxe enabledComboBoxesN
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
/// <param name="currentFocusOwner">TextBox control which received the event</param>
private void ProcKeyPressComboNumbers(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
/// Process <enter> key ..... Next text field
if (enabledComboBoxesN.Count < 2) return; /// There is just one enabled textbox
ComboBox currentComboBox = (sender as ComboBox);
for (int i = 0; i < enabledComboBoxesN.Count; i++)
{
if (enabledComboBoxesN[i] == currentComboBox)
{
/// Change focus to the next enabled text box
enabledComboBoxesN[(i + 1) % enabledComboBoxesN.Count].Focus();
return;
}
}
}
}
void PerformActionComboEscape(ComboBox selComboBox)
{
if (selComboBox != null && selComboBox.Visible == true)
{
// Use helper method to extract number from comboBox's name
int? initialSelectedValue = ExtractNumberFromComboBoxName(selComboBox);
if (!initialSelectedValue.HasValue)
{
return;
}
else
{
selComboBox.SelectedItem = initialSelectedValue;
log.Debug("Escape key pressed, and initial value was selected!");
}
}
}
private void comboBoxN1_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN1_Leave(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN1_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void ProcessKeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
e.Handled = true;
e.SuppressKeyPress = true; // To prevent the "ding" sound
PerformActionComboShuffle(sender as ComboBox);
ProcKeyPressComboNumbers(sender, e);
}
else if (e.KeyCode == Keys.Escape)
{
PerformActionComboEscape(sender as ComboBox);
// Move to the next control in the tab order
SelectNextControl((Control)sender, forward: true, tabStopOnly: true, nested: true, wrap: true);
}
else if (e.KeyCode == Keys.Up)
{
// Handle the Up arrow key press
// Move to the next control in the tab order
SelectNextControl((Control)sender, forward: false, tabStopOnly: true, nested: true, wrap: true);
}
else if (e.KeyCode == Keys.Down)
{
// Handle the Down arrow key press
// Move to the next control in the tab order
SelectNextControl((Control)sender, forward: true, tabStopOnly: true, nested: true, wrap: true);
}
// Handle '+' key
else if (e.KeyCode == Keys.Add || (e.Shift && e.KeyCode == Keys.Oemplus))
{
PerformActionComboEscape(sender as ComboBox);
SelectNextControl((Control)sender, forward: true, tabStopOnly: true, nested: true, wrap: true);
e.Handled = true; // Mark the event as handled (optional)
}
// Handle '-' key
else if (e.KeyCode == Keys.Subtract || e.KeyCode == Keys.OemMinus)
{
PerformActionComboEscape(sender as ComboBox);
SelectNextControl((Control)sender, forward: false, tabStopOnly: true, nested: true, wrap: true);
e.Handled = true; // Mark the event as handled (optional)
}
// Handle Left Arrow key
else if (e.KeyCode == Keys.Left)
{
}
// Handle Right Arrow key
else if (e.KeyCode == Keys.Right)
{
}
}
private void comboBoxN1_TextUpdate(object sender, EventArgs e)
{
//PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN1_SelectionChangeCommitted(object sender, EventArgs e)
{
//PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN2_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN5_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN3_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN4_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN11_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN6_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN7_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN8_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN9_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN10_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN12_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN13_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN14_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN15_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN16_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN17_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN18_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN19_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN20_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN21_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN22_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN23_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN24_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN25_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN26_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN27_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN28_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN29_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN30_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN31_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN32_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN33_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN34_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN35_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN36_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN37_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN38_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN39_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN40_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN41_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN42_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN43_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN44_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN45_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN46_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN47_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN48_SelectedIndexChanged(object sender, EventArgs e)
{
PerformActionComboShuffle(sender as ComboBox);
}
private void comboBoxN48_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN47_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN46_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN45_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN44_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN43_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN42_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN40_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN41_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN39_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN38_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN37_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN36_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN35_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN34_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN33_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN32_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN31_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN30_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN29_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN28_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN27_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN26_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN25_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN24_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN23_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN22_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN21_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN20_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN19_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN18_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN17_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN16_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN15_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN14_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN13_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN12_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN11_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN10_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN9_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN8_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN7_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN6_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN5_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN4_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN3_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
private void comboBoxN2_KeyDown(object sender, KeyEventArgs e)
{
ProcessKeyDown(sender, e);
}
/// <summary>
/// Handles the key down event for the ProcessKeyDownN method.
/// Disables add characters '+', '-' in text into combobox
/// </summary>
/// <param name="sender">The object that triggered the event.</param>
/// <param name="e">The KeyPressEventArgs containing the event data.</param>
private void ProcessKeyPressN(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == '+' || e.KeyChar == '-')
{
e.Handled = true; // Mark the event as handled (optional)
}
}
private void comboBoxN1_KeyPress(object sender, KeyPressEventArgs e)
{
ProcessKeyPressN(sender, e);
}
/// <summary>
/// Process all KeyPress included in list of enabledComboBoxesN
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void comboBoxNX_KeyPress(object sender, KeyPressEventArgs e)
{
ProcessKeyPressN(sender, e);
}
private void ProcessKeyPressOrder(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == '+')
{
e.Handled = true; // Mark the event as handled (optional)
//Jump focus on Box
purchaseBoxComboBox.Focus();
}
else if (e.KeyChar == '-')
{
e.Handled = true; // Mark the event as handled (optional)
//Do nothing - highest element
}
}
private void ProcessKeyPressBox(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == '+')
{
e.Handled = true; // Mark the event as handled (optional)
//Jump focus on Firs comboBoxN1 / buttonChooseBox if is visible
if (buttonChooseBox.Enabled)
{
buttonChooseBox.Focus();
}
else
{
comboBoxN1.Focus();
}
}
else if (e.KeyChar == '-')
{
e.Handled = true; // Mark the event as handled (optional)
//Jump focus on Firs comboBoxN1
orderComboBox.Focus();
}
}
private void ProcessKeyPressButton(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == '+')
{
e.Handled = true; // Mark the event as handled (optional)
//Jump focus on Firs comboBoxN1
comboBoxN1.Focus();
}
else if (e.KeyChar == '-')
{
e.Handled = true; // Mark the event as handled (optional)
//Jump focus on Firs comboBoxN1
purchaseBoxComboBox.Focus();
}
}
private void orderComboBox_KeyPress(object sender, KeyPressEventArgs e)
{
ProcessKeyPressOrder(sender, e);
}
private void purchaseBoxComboBox_KeyPress(object sender, KeyPressEventArgs e)
{
ProcessKeyPressBox(sender, e);
}
private void buttonChooseBox_KeyPress(object sender, KeyPressEventArgs e)
{
ProcessKeyPressButton(sender, e);
}
// Create a ToolTip object (this can also be done via the designer)
private ToolTip toolTip = new ToolTip();
private void CreateTooltipToInfoAboutLock()
{
// Set the ToolTip for the disabled CheckBox
toolTip.SetToolTip(orderComboBox, " If is Locked by Order items! To unlock use button Clear, please!");
toolTip.AutoPopDelay = 5000; // The time (in milliseconds) the tooltip stays visible
toolTip.InitialDelay = 500; // The time (in milliseconds) before the tooltip appears
toolTip.ReshowDelay = 500; // The time (in milliseconds) before subsequent tooltips appear
toolTip.ShowAlways = true; // Ensures the tooltip shows even when the control is disabled
toolTip.Active = true;
}
private void orderComboBox_Click(object sender, EventArgs e)
{
if (orderComboBox.Enabled == false && orderGroupBox.Enabled == true)
{
MessageBox.Show(this,
"To unlock use button Clear, please!",
"Locked by Order items!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
private void orderComboBox_MouseMove(object sender, MouseEventArgs e)
{
/*ComboBox comboBox = sender as ComboBox;
if (comboBox != null && comboBox.Enabled == false)
{
toolTip.Show("To unlock use button Clear, please!", comboBox, 0, comboBox.Height);
}*/
}
private void orderComboBox_MouseLeave(object sender, EventArgs e)
{
/* ComboBox comboBox = sender as ComboBox;
if (comboBox != null && comboBox.Enabled == false)
{
toolTip.Hide(comboBox);
}*/
}
private void orderGroupBox_MouseHover(object sender, EventArgs e)
{
/* // Get the mouse position in screen coordinates
Point mousePositionInScreen = Cursor.Position;
// Check if the mouse is over the disabled ComboBox
if (mousePositionInScreen != null && orderComboBox.Enabled == false &&
orderComboBox.Bounds.Contains(mousePositionInScreen))
{
toolTip.Show("To unlock use button Clear, please!", orderComboBox, 0, orderComboBox.Height);
//toolTip.Hide(comboBox);
}
else if (orderComboBox.Enabled == false)
{
toolTip.Hide(orderComboBox);
}*/
}
}
}