// Função auxiliar para adição/edição de novo parâmetro
        private void OpenParamWindow(string param = "", string value = "", int itemPosition = -1)
        {
            AddParamWindow addParamWindow = new AddParamWindow(param, value);

            addParamWindow.ShowDialog(ref param, ref value);

            if (!string.IsNullOrEmpty(param) & !string.IsNullOrEmpty(value) & !string.IsNullOrWhiteSpace(value))
            {
                PW_Parameter parameterObject = new PW_Parameter();

                E_PWINFO receivedParam = (E_PWINFO)Enum.Parse(typeof(E_PWINFO), param);

                parameterObject.parameterName  = param;
                parameterObject.parameterCode  = (ushort)receivedParam;
                parameterObject.parameterValue = value;

                foreach (PW_Parameter item in lstParameters.Items)
                {
                    if (item.parameterName == parameterObject.parameterName && itemPosition == -1)
                    {
                        MessageBox.Show(this, "Você não pode inserir duas vezes o mesmo parâmetro");
                        return;
                    }
                }

                if (itemPosition != -1)
                {
                    lstParameters.Items.RemoveAt(itemPosition);
                }
                lstParameters.Items.Add(parameterObject);
            }
        }
        // Edita um parâmetro já adicionado
        private void lstParameters_MouseDoubleClick(object sender, MouseButtonEventArgs e)
        {
            if (lstParameters.SelectedIndex == -1)
            {
                return;
            }
            PW_Parameter param = (PW_Parameter)lstParameters.SelectedItem;

            OpenParamWindow(param.parameterName, param.parameterValue, lstParameters.SelectedIndex);
        }