Imports EnvelopeGenerator.Common Imports EnvelopeGenerator.Common.My Imports EnvelopeGenerator.Common.Constants Imports System.ComponentModel Public Class frmEnvelopeMainData Public Property Envelope As Envelope = New Envelope() Public Property NewEnvelopeMode As Boolean = True Private Property EnvelopeTypeModel As EnvelopeTypeModel Private Property EnvelopeType As New EnvelopeType Public Property State As State Public Sub New() InitializeComponent() End Sub Private Sub frmEnvelopeMainData_Load(sender As Object, e As EventArgs) Handles MyBase.Load If NewEnvelopeMode = True Then Me.Text = Resources.Envelope.New_Envelope Else Me.Text = Resources.Envelope.Edit_Envelope cmbEnvelopeType.ReadOnly = True End If EnvelopeTypeModel = New EnvelopeTypeModel(State) Dim oTypes = EnvelopeTypeModel.List() Dim certificationTypeList = [Enum].GetValues(GetType(CertificationType)).Cast(Of CertificationType)() Dim oTranslatedCertificationTypeList = certificationTypeList.Select(AddressOf TranslateCertificationType).ToList() cmbCertificationType.Properties.Items.AddRange(oTranslatedCertificationTypeList) Dim finalEmailTypeList = [Enum].GetValues(GetType(FinalEmailType)).Cast(Of FinalEmailType)() Dim oTranslatedFinalEmailTypeList = FinalEmailTypeList.Select(AddressOf TranslateFinalEmailType).ToList() cmbEmailToCreator.Properties.Items.AddRange(oTranslatedFinalEmailTypeList) cmbEmailToReceivers.Properties.Items.AddRange(oTranslatedFinalEmailTypeList) cmbEnvelopeType.Properties.Items.AddRange(oTypes.ToList) cmbLanguage.Properties.Items.AddRange(New List(Of String) From {"de", "en"}) groupAllOptions.Expanded = False txtTitle.EditValue = Envelope.Title cmbEnvelopeType.EditValue = oTypes.FirstOrDefault() cmbCertificationType.SelectedIndex = oTypes.FirstOrDefault.CertificationType cmbEmailToCreator.SelectedIndex = oTypes.FirstOrDefault.FinalEmailToCreator cmbEmailToReceivers.SelectedIndex = oTypes.FirstOrDefault.FinalEmailToReceivers End Sub Private Function TranslateCertificationType(pType As CertificationType) As String Return Resources.Model.ResourceManager.GetString(pType.ToString()) End Function Private Function TranslateFinalEmailType(pType As FinalEmailType) As String Return Resources.Model.ResourceManager.GetString(pType.ToString()) End Function Private Sub btOK_Click(sender As Object, e As EventArgs) Handles btOK.Click Dim Validator As Validator = New Validator(State.LogConfig, AdornerUIManager1) Dim oMissingParams = Validator.Validate(txtTitle) If oMissingParams = True Then Me.DialogResult = DialogResult.None txtTitle.Focus() Return End If Envelope.Title = txtTitle.EditValue.ToString Envelope.EnvelopeType = DirectCast(cmbEnvelopeType.EditValue, EnvelopeType).Id Envelope.CertificationType = cmbCertificationType.EditValue Envelope.Language = cmbLanguage.EditValue Envelope.UseAccessCode = chkUseAccessCode.EditValue Envelope.SendReminderEmails = chkSendReminderEmails.EditValue Envelope.FirstReminderDays = spnFirstReminderDays.EditValue Envelope.ReminderIntervalDays = spnReminderIntervalDays.EditValue Envelope.ExpiresWhenDays = spnExpiresDays.EditValue Envelope.ExpiresWarningWhenDays = spnExpiresWarningDays.EditValue Envelope.FinalEmailToCreator = cmbEmailToCreator.EditValue Envelope.FinalEmailToReceivers = cmbEmailToReceivers.EditValue ' ContractType kann zzt nicht über die Oberfläche gesetzt werden Envelope.ContractType = ContractType.Contract End Sub Private Sub frmEnvelopeMainData_Shown(sender As Object, e As EventArgs) Handles Me.Shown SetFormHeight() End Sub Private Sub SetFormHeight() ClientSize = New Size(ClientSize.Width, LayoutControl1.Root.MinSize.Height) End Sub Private Sub LayoutControl1_GroupExpandChanged(sender As Object, e As DevExpress.XtraLayout.Utils.LayoutGroupEventArgs) Handles LayoutControl1.GroupExpandChanged If e.Group.Name = groupAllOptions.Name Then SetFormHeight() End If End Sub Private Sub cmbContractType_SelectedValueChanged(sender As Object, e As EventArgs) Handles cmbEnvelopeType.SelectedValueChanged Dim oSelectedType As EnvelopeType = cmbEnvelopeType.SelectedItem If oSelectedType Is Nothing Then Exit Sub End If EnvelopeType = oSelectedType 'cmbCertificationType.EditValue = oSelectedType.CertificationType cmbLanguage.EditValue = oSelectedType.Language chkUseAccessCode.EditValue = oSelectedType.UseAccessCode chkSendReminderEmails.EditValue = oSelectedType.SendReminderEmails spnFirstReminderDays.EditValue = oSelectedType.FirstReminderDays spnReminderIntervalDays.EditValue = oSelectedType.ReminderIntervalDays spnExpiresDays.EditValue = oSelectedType.ExpiresWhenDays spnExpiresWarningDays.EditValue = oSelectedType.ExpiresWarningWhenDays 'cmbEmailToCreator.EditValue = oSelectedType.FinalEmailToCreator 'cmbEmailToReceivers.EditValue = oSelectedType.FinalEmailToReceivers cmbCertificationType.SelectedIndex = oSelectedType.CertificationType cmbEmailToCreator.SelectedIndex = oSelectedType.FinalEmailToCreator cmbEmailToReceivers.SelectedIndex = oSelectedType.FinalEmailToReceivers End Sub End Class