ToolCollection/ToolCollection/frmDIRegelAssistent.vb

1280 lines
52 KiB
VB.net

Imports WINDREAMLib.WMObjectVariableValueType
Public Class frmDIRegelAssistent
' ***** Definitionen *****
#Region "=============== Konstanten ==============="
Private Const DATEI = 8
Private Const ORDNER = 16
Private Const FEST = 24
Private Const KOMPLETT = 1
Private Const BEREICH = 2
Private Const REST = 3
Private Const TRENNZEICHEN = 4
Private Const ENDUNG = 5
#End Region
#Region "=============== Variablen ==============="
Public _objekttyp As String = "" '"Digital Data - Öffentlich"
Public _profilname As String = ""
Public _regeln As ClassDIRegeln = New ClassDIRegeln(Me._profilname)
Private _regelIndex As Integer = 0
Private _regelDummy As ClassDIRegel()
Private _trennzeichen_temp As String = " "
Private _value As String = ""
Private _indexe As String()
Public Shared _windream As New ClassWindream_allgemein(CURR_LogConfig)
Private _datumFormat As String = ""
Private _removeZeros As Boolean = False
#End Region
' ***** Logik *****
#Region "=============== Formularweit (OnLoad) ==============="
Private Sub frmRegelHinzufügenAssistent_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.ShowPanel(Me.pnlStartseite)
Me.CancelButton = Me.btnStartseiteAbbrechen
Me.rbIndexartDatei.Checked = False
Me.rbIndexartOrdner.Checked = False
Me.rbIndexartFest.Checked = False
Me.rbDateiKomplett.Checked = False
Me.chkKomplettDateiendung.Checked = False
Me.rbDateiBereich.Checked = False
Me.numSelektierenErstesZeichen.Value = 0
Me.numSelektierenAnzahlZeichen.Value = 0
Me.rbDateiRest.Checked = False
Me.numRestErstesZeichen.Value = 0
Me.chkRestDateiendung.Checked = False
Me.rbDateiTrennzeichen.Checked = False
Me.txtTrennzeichen.Text = ""
Me.numTrennzeichenPosition.Value = 0
Me.chkTrennzeichenDateiendung.Checked = False
Me.rbDateiEndung.Checked = False
Me.txtEndung.Text = ""
Me.txtIndexwert.Text = ""
Me.rbOrdnerEbeneRoot.Checked = False
Me.rbOrdnerEbeneParent.Checked = False
Me.rbOrdnerEbeneBenutzerdefiniert.Checked = False
Me.numOrdnerEbene.Value = 0
Me.rbOrdnerKomplett.Checked = False
Me.rbOrdnerBereich.Checked = False
Me.rbOrdnerRest.Checked = False
Me.rbOrdnerTrennzeichen.Checked = False
Me.rbDatumBenutzer.Checked = False
Me.rbDatumJJJJ_MM_TT.Checked = False
Me.rbDatumTT_MM_JJJJ.Checked = False
Me.rbDatumJJJJMMTT.Checked = False
Me.rbDatumTTMMJJJJ.Checked = False
Me.rbDatumTTpMMpJJJJ.Checked = False
Me.txtDatumBenutzer.Text = ""
' die Indexe zu dem Objekttyp auslesen
Me._indexe = _windream.GetIndicesByObjecttype(Me._objekttyp, True, "DI")
' Indexfelder eintragen
Me.lbxIndex.Items.Clear()
For Each index As String In Me._indexe
Me.lbxIndex.Items.Add(index)
Next
Me._regelIndex = 0
End Sub
#End Region
#Region "=============== Methoden ==============="
#Region "*************** _CountRegel() ***************"
''' <summary>
''' Erhöht oder vermindert den Counter mit dem die ausgewählte Regel identifiziert wird.
''' </summary>
''' <param name="value">Wert um den der Counter erhöht oder vermindert wird</param>
''' <param name="vor">False angeben wenn der Counter vermindert werden soll (wenn im Menü ein Schritt zurück gegangen wurde)</param>
''' <remarks></remarks>
Private Sub _CountRegel(ByVal value As Integer, Optional ByVal vor As Boolean = True)
If vor Then
Me._regelIndex += value
'MsgBox("VOR: +" & value & " => " & Me._regelIndex)
Else
Me._regelIndex -= value
'MsgBox("ZURÜCK: -" & value & " => " & Me._regelIndex)
End If
End Sub
#End Region
#Region "*************** ShowPanel() ***************"
''' <summary>
''' Zeigt ein bestimmtes Panel an.
''' </summary>
''' <param name="panel">Panel als Control-Objekt</param>
''' <remarks>Jedes Panel entspricht einer Seite des Assistenten.</remarks>
Private Sub ShowPanel(ByVal panel As Control)
Me.pnlStartseite.Visible = False
Me.pnlIndexart.Visible = False
Me.pnlIndexMethodeDatei.Visible = False
Me.pnlIndexMethodeOrdner.Visible = False
Me.pnlOrdnerEbene.Visible = False
Me.pnlKomplett.Visible = False
Me.pnlSelektieren.Visible = False
Me.pnlRest.Visible = False
Me.pnlTrennzeichen.Visible = False
Me.pnlEndung.Visible = False
Me.pnlIndexauswahl.Visible = False
Me.pnlDatum.Visible = False
Me.pnlÜbersicht.Visible = False
'MsgBox(Me._regelIndex)
If Me._regelIndex > 8 And Me._regelIndex < 16 Then
Select Case Me._regelIndex - 8
Case 1 ' komplette Zeichenkette
Case 2 ' selektierter Bereich
Case 3 ' der Rest der Zeichenkette
Me.chkRestDateiendung.Visible = True
Case 4 ' an Hand eines Trennzeichens
Me.chkTrennzeichenDateiendung.Visible = True
Case 5 ' an Hand der Dateiendung
End Select
ElseIf Me._regelIndex > 16 And Me._regelIndex < 24 Then
Select Case Me._regelIndex - 16
Case 1 ' komplette Zeichenkette
Case 2 ' selektierter Bereich
Case 3 ' der Rest der Zeichenkette
Me.chkRestDateiendung.Visible = False
Case 4 ' an Hand eines Trennzeichens
Me.chkTrennzeichenDateiendung.Visible = False
End Select
ElseIf Me._regelIndex > 24 And Me._regelIndex < 32 Then
End If
panel.Visible = True
panel.Dock = DockStyle.Fill
End Sub
#End Region
#Region "*************** SetLabelSettings() ***************"
''' <summary>
''' Setzt den Text und die Eigenschaften für ein Label in der Gesamtübersicht.
''' </summary>
''' <param name="label">das Label als Control.Label, dass geändert werden soll</param>
''' <param name="text">der Text der dem Label zugeordnet werden soll</param>
''' <remarks></remarks>
Private Sub SetLabelSettings(ByVal label As Label, ByVal text As String)
label.Text = text
label.AutoSize = False
label.Height = 40
label.Width = 550
label.TextAlign = ContentAlignment.MiddleLeft
End Sub
#End Region
#Region "*************** InitialisiereÜbersicht() ***************"
''' <summary>
''' Initialisiert die Gesamtübersicht. Setzt also alle Texte und legt die Informationen fest, die angezeigt werden sollen.
''' </summary>
''' <remarks></remarks>
Private Sub InitialisiereÜbersicht()
If Me.Visible Then
Dim image1 As PictureBox = New System.Windows.Forms.PictureBox
Dim image2 As PictureBox = New System.Windows.Forms.PictureBox
Dim image3 As PictureBox = New System.Windows.Forms.PictureBox
Dim image4 As PictureBox = New System.Windows.Forms.PictureBox
Dim image5 As PictureBox = New System.Windows.Forms.PictureBox
Dim image6 As PictureBox = New System.Windows.Forms.PictureBox
Dim image7 As PictureBox = New System.Windows.Forms.PictureBox
Dim l1 As Label = New Label
Dim l2 As Label = New Label
Dim l3 As Label = New Label
Dim l4 As Label = New Label
Dim l5 As Label = New Label
Dim l6 As Label = New Label
Dim l7 As Label = New Label
Me.layoutÜbersicht.Controls.Clear()
If Me._regelIndex > 8 And Me._regelIndex < 16 Then
Me.SetLabelSettings(l1, "Index aus Datei auslesen")
Select Case Me._regelIndex - 8
Case 1
Me.SetLabelSettings(l2, "kompletten Namen als Index verwenden")
If Me.chkKomplettDateiendung.Checked Then
Me.SetLabelSettings(l3, "die Dateiendung wird in den Index miteinbezogen")
Else
Me.SetLabelSettings(l3, "die Dateiendung wird nicht in den Index miteinbezogen")
End If
Me.SetLabelSettings(l4, "der Wert wird an den Index '" & Me.lbxIndex.SelectedItem & "' übergeben")
'Me.SetLabelSettings(l5, "der Wert wird an den Index '" & Me.lbxIndex.SelectedItem & "' übergeben")
Case 2
Me.SetLabelSettings(l2, "einen ausgewählten Bereich als Index verwenden")
Me.SetLabelSettings(l3, "von dem " & Me.numSelektierenErstesZeichen.Value & ". Zeichen")
Me.SetLabelSettings(l4, "bis einschließlich dem " & Me.numSelektierenErstesZeichen.Value + Me.numSelektierenAnzahlZeichen.Value - 1 & ". Zeichen (also " & Me.numSelektierenAnzahlZeichen.Value & " Zeichen)")
Me.SetLabelSettings(l5, "der Wert wird an den Index '" & Me.lbxIndex.SelectedItem & "' übergeben")
Case 3
Me.SetLabelSettings(l2, "einen Bereich ab einer bestimmten Position bis zum Ende verwenden")
Me.SetLabelSettings(l3, "ab Position: " & Me.numRestErstesZeichen.Value)
If Me.chkRestDateiendung.Checked Then
Me.SetLabelSettings(l4, "die Dateiendung wird in den Index miteinbezogen")
Else
Me.SetLabelSettings(l4, "die Dateiendung wird nicht in den Index miteinbezogen")
End If
Me.SetLabelSettings(l5, "der Wert wird an den Index '" & Me.lbxIndex.SelectedItem & "' übergeben")
Case 4
Me.SetLabelSettings(l2, "einen an Hand eines Trennzeichens ausgewählten Bereich verwenden")
Me.SetLabelSettings(l3, "Trennzeichen: '" & Me.txtTrennzeichen.Text & "'")
Me.SetLabelSettings(l4, "das " & Me.numTrennzeichenPosition.Value & ". Vorkommen in der Zeichenkette")
If Me.chkTrennzeichenDateiendung.Checked Then
Me.SetLabelSettings(l5, "die Dateiendung wird in den Index miteinbezogen")
Else
Me.SetLabelSettings(l5, "die Dateiendung wird nicht in den Index miteinbezogen")
End If
Me.SetLabelSettings(l6, "der Wert wird an den Index '" & Me.lbxIndex.SelectedItem & "' übergeben")
Case 5
Me.SetLabelSettings(l2, "einen Index an Hand der Dateiendung vergeben")
Me.SetLabelSettings(l3, "alle Dateien mit der Dateiendung '" & Me.txtEndung.Text.ToUpper & "'")
Me.SetLabelSettings(l4, "erhalten den Index '" & Me.txtIndexwert.Text & "'")
Me.SetLabelSettings(l5, "der Wert wird an den Index '" & Me.lbxIndex.SelectedItem & "' übergeben")
End Select
layoutÜbersicht.Controls.Add(image1)
layoutÜbersicht.Controls.Add(l1)
layoutÜbersicht.Controls.Add(image2)
layoutÜbersicht.Controls.Add(l2)
If Not l3.Text = "" Then
layoutÜbersicht.Controls.Add(image3)
layoutÜbersicht.Controls.Add(l3)
End If
If Not l4.Text = "" Then
layoutÜbersicht.Controls.Add(image4)
layoutÜbersicht.Controls.Add(l4)
End If
If Not l5.Text = "" Then
layoutÜbersicht.Controls.Add(image5)
layoutÜbersicht.Controls.Add(l5)
End If
If Not l6.Text = "" Then
layoutÜbersicht.Controls.Add(image6)
layoutÜbersicht.Controls.Add(l6)
End If
ElseIf Me._regelIndex > 16 And Me._regelIndex < 24 Then
Me.SetLabelSettings(l1, "Index aus Ordner auslesen")
Select Case Me._regelIndex - 16
Case 1
Me.SetLabelSettings(l2, "kompletten Namen als Index verwenden")
Me.SetLabelSettings(l3, "der Wert wird an den Index '" & Me.lbxIndex.SelectedItem & "' übergeben")
Case 2
Me.SetLabelSettings(l2, "einen ausgewählten Bereich als Index verwenden")
Me.SetLabelSettings(l3, "von dem " & Me.numSelektierenErstesZeichen.Value & ". Zeichen")
Me.SetLabelSettings(l4, "bis einschließlich dem " & Me.numSelektierenErstesZeichen.Value + Me.numSelektierenAnzahlZeichen.Value - 1 & ". Zeichen (also " & Me.numSelektierenAnzahlZeichen.Value & " Zeichen)")
Me.SetLabelSettings(l5, "der Wert wird an den Index '" & Me.lbxIndex.SelectedItem & "' übergeben")
Case 3
Me.SetLabelSettings(l2, "einen Bereich ab einer bestimmten Position bis zum Ende verwenden")
Me.SetLabelSettings(l3, "ab dem " & Me.numRestErstesZeichen.Value & ". Zeichen bis zum Ende")
Me.SetLabelSettings(l4, "der Wert wird an den Index '" & Me.lbxIndex.SelectedItem & "' übergeben")
Case 4
Me.SetLabelSettings(l2, "einen an Hand eines Trennzeichens ausgewählten Bereich verwenden")
Me.SetLabelSettings(l3, "Trennzeichen: '" & Me.txtTrennzeichen.Text & "'")
Me.SetLabelSettings(l4, "das " & Me.numTrennzeichenPosition.Value & ". Vorkommen in der Zeichenkette")
Me.SetLabelSettings(l5, "der Wert wird an den Index '" & Me.lbxIndex.SelectedItem & "' übergeben")
End Select
layoutÜbersicht.Controls.Add(image1)
layoutÜbersicht.Controls.Add(l1)
layoutÜbersicht.Controls.Add(image2)
layoutÜbersicht.Controls.Add(l2)
If Not l3.Text = "" Then
layoutÜbersicht.Controls.Add(image3)
layoutÜbersicht.Controls.Add(l3)
End If
If Not l4.Text = "" Then
layoutÜbersicht.Controls.Add(image4)
layoutÜbersicht.Controls.Add(l4)
End If
If Not l5.Text = "" Then
layoutÜbersicht.Controls.Add(image5)
layoutÜbersicht.Controls.Add(l5)
End If
If Not l6.Text = "" Then
layoutÜbersicht.Controls.Add(image6)
layoutÜbersicht.Controls.Add(l6)
End If
ElseIf Me._regelIndex >= 24 And Me._regelIndex < 32 Then
'Mit Festen Index indexieren
Me.SetLabelSettings(l1, "Einen festen Index übergeben")
Me.SetLabelSettings(l2, "Fester Indexwert: " & _value)
Me.SetLabelSettings(l3, "der Wert wird an den Index '" & Me.lbxIndex.SelectedItem & "' übergeben")
layoutÜbersicht.Controls.Add(image1)
layoutÜbersicht.Controls.Add(l1)
layoutÜbersicht.Controls.Add(image2)
layoutÜbersicht.Controls.Add(l2)
If Not l3.Text = "" Then
layoutÜbersicht.Controls.Add(image3)
layoutÜbersicht.Controls.Add(l3)
End If
If Not l4.Text = "" Then
layoutÜbersicht.Controls.Add(image4)
layoutÜbersicht.Controls.Add(l4)
End If
If Not l5.Text = "" Then
layoutÜbersicht.Controls.Add(image5)
layoutÜbersicht.Controls.Add(l5)
End If
If Not l6.Text = "" Then
layoutÜbersicht.Controls.Add(image6)
layoutÜbersicht.Controls.Add(l6)
End If
End If
Dim ausgewählterIndexTyp As Integer = _windream.GetTypeOfIndexAsIntByName(Me.lbxIndex.SelectedItem)
Select Case ausgewählterIndexTyp
Case WMObjectVariableValueTypeDate
Me.SetLabelSettings(l7, "der ausgelesene Wert wird auf das Datumsformat " & Me._datumFormat & " geprüft")
layoutÜbersicht.Controls.Add(image7)
layoutÜbersicht.Controls.Add(l7)
Case Else
Me.ShowPanel(Me.pnlÜbersicht)
Me.CancelButton = Me.btnÜbersichtAbbrechen
End Select
End If
End Sub
#End Region
#End Region
' ***** Reaktion auf Formular-Events *****
#Region "=============== Buttons ==============="
#Region "--------------- Globale Panels ---------------"
#Region "*************** Startseite ***************"
Private Sub btnStartseiteWeiter_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnStartseiteWeiter.Click
Me.ShowPanel(Me.pnlIndexart)
Me.CancelButton = Me.btnIndexartAbbrechen
End Sub
Private Sub btnStartseiteAbbrechen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnStartseiteAbbrechen.Click
Me.Close()
End Sub
#End Region
#Region "*************** Indexierungsart ***************"
Private Sub btnIndexartWeiter_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnIndexartWeiter.Click
If Me.rbIndexartDatei.Checked Then
Me._CountRegel(DATEI)
Me.ShowPanel(Me.pnlIndexMethodeDatei)
Me.CancelButton = Me.btnDateiAbbrechen
ElseIf Me.rbIndexartOrdner.Checked Then
Me._CountRegel(ORDNER)
Me.ShowPanel(Me.pnlIndexMethodeOrdner)
Me.CancelButton = Me.btnOrdnerAbbrechen
ElseIf Me.rbIndexartFest.Checked Then
Me._CountRegel(FEST)
grbxFesterWert.Visible = True
Me.txtValue.Text = ""
Me.ShowPanel(Me.pnlIndexauswahl)
Me.CancelButton = Me.btnIndexauswahlAbbrechen
End If
End Sub
Private Sub btnIndexartZurück_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnIndexartZurück.Click
Me.ShowPanel(Me.pnlStartseite)
Me.CancelButton = Me.btnStartseiteAbbrechen
End Sub
Private Sub btnIndexartAbbrechen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnIndexartAbbrechen.Click
Me.Close()
End Sub
#End Region
#Region "*************** Dateiindexierung ***************"
Private Sub btnDateiWeiter_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDateiWeiter.Click
If Me.rbDateiKomplett.Checked Then
Me._CountRegel(KOMPLETT)
Me.ShowPanel(Me.pnlKomplett)
Me.CancelButton = Me.btnKomplettAbbrechen
End If
If Me.rbDateiBereich.Checked Then
Me._CountRegel(BEREICH)
Me.ShowPanel(Me.pnlSelektieren)
Me.CancelButton = Me.btnRestAbbrechen
End If
If Me.rbDateiRest.Checked Then
Me._CountRegel(REST)
Me.ShowPanel(Me.pnlRest)
Me.CancelButton = Me.btnRestAbbrechen
End If
If Me.rbDateiTrennzeichen.Checked Then
Me._CountRegel(TRENNZEICHEN)
Me.ShowPanel(Me.pnlTrennzeichen)
Me.CancelButton = Me.btnTrennzeichenAbbrechen
End If
If Me.rbDateiEndung.Checked Then
Me._CountRegel(ENDUNG)
Me.ShowPanel(Me.pnlEndung)
Me.CancelButton = Me.btnEndungAbbrechen
End If
End Sub
Private Sub btnDateiZurück_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDateiZurück.Click
Me._CountRegel(DATEI, False)
Me.ShowPanel(Me.pnlIndexart)
Me.CancelButton = Me.btnIndexartAbbrechen
End Sub
Private Sub btnDateiAbbrechen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDateiAbbrechen.Click
Me.Close()
End Sub
#End Region
#Region "*************** Ordnerindexierung ***************"
Private Sub btnOrdnerWeiter_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOrdnerWeiter.Click
If Me.rbOrdnerKomplett.Checked Or Me.rbOrdnerBereich.Checked Or Me.rbOrdnerRest.Checked Or Me.rbOrdnerTrennzeichen.Checked Then
If Me.rbOrdnerKomplett.Checked Then
Me._CountRegel(KOMPLETT)
End If
If Me.rbOrdnerBereich.Checked Then
Me._CountRegel(BEREICH)
End If
If Me.rbOrdnerRest.Checked Then
Me._CountRegel(REST)
End If
If Me.rbOrdnerTrennzeichen.Checked Then
Me._CountRegel(TRENNZEICHEN)
End If
Me.ShowPanel(Me.pnlOrdnerEbene)
Me.CancelButton = Me.btnOrdnerEbeneAbbrechen
End If
End Sub
Private Sub btnOrdnerZurück_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOrdnerZurück.Click
Me._CountRegel(ORDNER, False)
Me.ShowPanel(Me.pnlIndexart)
Me.CancelButton = Me.btnIndexartAbbrechen
End Sub
Private Sub btnOrdnerAbbrechen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOrdnerAbbrechen.Click
Me.Close()
End Sub
#End Region
#Region "*************** Indexauswahl ***************"
Private Sub btnIndexauswahlWeiter_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnIndexauswahlWeiter.Click
If Me._regelIndex = 24 Then
'Indexierung über festen Index
If Me.txtValue.Text = "" Then
MsgBox("Bitte geben Sie einen festen Indexwert an!", MsgBoxStyle.Critical, "Fehlender Wert:")
Exit Sub
End If
End If
_value = txtValue.Text
Me.InitialisiereÜbersicht()
Dim ausgewählterIndexTyp As Integer = _windream.GetTypeOfIndexAsIntByName(Me.lbxIndex.SelectedItem)
Select Case ausgewählterIndexTyp
Case WMObjectVariableValueTypeDate
Me.ShowPanel(Me.pnlDatum)
Me.CancelButton = Me.btnDatumAbbrechen
' dsf()
Case Else
Me.ShowPanel(Me.pnlÜbersicht)
Me.CancelButton = Me.btnÜbersichtAbbrechen
End Select
End Sub
Private Sub btnIndexauswahlZurück_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnIndexauswahlZurück.Click
If Me._regelIndex > 8 And Me._regelIndex < 16 Then
Select Case Me._regelIndex - 8
Case 1
Me.ShowPanel(Me.pnlKomplett)
Me.CancelButton = Me.btnKomplettAbbrechen
Case 2
Me.ShowPanel(Me.pnlSelektieren)
Me.CancelButton = Me.btnSelektierenAbbrechen
Case 3
Me.ShowPanel(Me.pnlRest)
Me.CancelButton = Me.btnRestAbbrechen
Case 4
Me.ShowPanel(Me.pnlTrennzeichen)
Me.CancelButton = Me.btnDateiAbbrechen
Case 5
Me.ShowPanel(Me.pnlIndexMethodeDatei)
Me.CancelButton = Me.btnDateiAbbrechen
End Select
ElseIf Me._regelIndex > 16 And Me._regelIndex < 24 Then
Select Case Me._regelIndex - 16
Case 1
Me.ShowPanel(Me.pnlOrdnerEbene)
Me.CancelButton = Me.btnOrdnerEbeneAbbrechen
'Me._CountRegel(KOMPLETT, False)
Case 2
Me.ShowPanel(Me.pnlSelektieren)
Me.CancelButton = Me.btnSelektierenAbbrechen
Case 3
Me.ShowPanel(Me.pnlRest)
Me.CancelButton = Me.btnRestAbbrechen
Case 4
Me.ShowPanel(Me.pnlTrennzeichen)
Me.CancelButton = Me.btnOrdnerAbbrechen
End Select
End If
End Sub
Private Sub btnIndexauswahlAbbrechen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnIndexauswahlAbbrechen.Click
Me.Close()
End Sub
#End Region
#Region "*************** Übersicht ***************"
Private Sub btnÜbersichtZurück_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnÜbersichtZurück.Click
Dim ausgewählterIndexTyp As Integer = _windream.GetTypeOfIndexAsIntByName(Me.lbxIndex.SelectedItem)
Select Case ausgewählterIndexTyp
Case WMObjectVariableValueTypeDate
Me.ShowPanel(Me.pnlDatum)
Me.CancelButton = Me.btnDatumAbbrechen
Case Else
Me.ShowPanel(Me.pnlIndexauswahl)
Me.CancelButton = Me.btnIndexauswahlAbbrechen
End Select
End Sub
Private Sub btnÜbersichtFertigStellen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnÜbersichtFertigStellen.Click
If _windream.GetTypeOfIndexAsIntByName(Me.lbxIndex.SelectedItem) = WINDREAMLib.WMObjectVariableValueType.WMObjectVariableValueTypeDate Then
If Me.rbDatumBenutzer.Checked Then
Me._datumFormat = ClassDIHelpers.GetDatumFormat(Me.txtDatumBenutzer.Text)
Else
Me._datumFormat = ClassDIHelpers.GetDatumFormat(Me._datumFormat)
End If
Else
Me._datumFormat = Nothing
End If
If Me._regelIndex > 8 And Me._regelIndex < 16 Then ' Dateiregeln
Select Case Me._regelIndex - 8
Case 1
Me._regeln.Add(Me.lbxIndex.SelectedItem, "KOMPLETT", "DATEI", Me._datumFormat, -2, Me.chkKomplettDateiendung.Checked, Nothing, Nothing, Nothing, Nothing, Nothing, _removeZeros)
Case 2
Me._regeln.Add(Me.lbxIndex.SelectedItem, "BEREICH", "DATEI", Me._datumFormat, -2, Me.numSelektierenErstesZeichen.Value, Me.numSelektierenAnzahlZeichen.Value, Nothing, Nothing, Nothing, Nothing, _removeZeros)
Case 3
Me._regeln.Add(Me.lbxIndex.SelectedItem, "REST", "DATEI", Me._datumFormat, -2, Me.numRestErstesZeichen.Value, Me.chkRestDateiendung.Checked, Nothing, Nothing, Nothing, Nothing, _removeZeros)
Case 4
Me._regeln.Add(Me.lbxIndex.SelectedItem, "TRENNZEICHEN", "DATEI", Me._datumFormat, -2, Me.txtTrennzeichen.Text, Me.numTrennzeichenPosition.Value, Me.chkTrennzeichenDateiendung.Checked, Nothing, Nothing, Nothing, _removeZeros)
Case 5
Me._regeln.Add(Me.lbxIndex.SelectedItem, "DATEIENDUNG", "DATEI", Me._datumFormat, -2, Me.txtEndung.Text, Me.txtIndexwert.Text, Nothing, Nothing, Nothing, Nothing, _removeZeros)
End Select
ElseIf Me._regelIndex > 16 And Me._regelIndex < 24 Then ' Ordnerregeln
Dim ebene As Integer = -2
If Me.rbOrdnerEbeneParent.Checked Then ebene = -1
If Me.rbOrdnerEbeneRoot.Checked Then ebene = 0
If Me.rbOrdnerEbeneBenutzerdefiniert.Checked Then ebene = Me.numOrdnerEbene.Value
Select Case Me._regelIndex - 16
Case 1
Me._regeln.Add(Me.lbxIndex.SelectedItem, "KOMPLETT", "ORDNER", Me._datumFormat, ebene, False)
Case 2
Me._regeln.Add(Me.lbxIndex.SelectedItem, "BEREICH", "ORDNER", Me._datumFormat, ebene, Me.numSelektierenErstesZeichen.Value, Me.numSelektierenAnzahlZeichen.Value)
Case 3
Me._regeln.Add(Me.lbxIndex.SelectedItem, "REST", "ORDNER", Me._datumFormat, ebene, Me.numRestErstesZeichen.Value, False)
Case 4
Me._regeln.Add(Me.lbxIndex.SelectedItem, "TRENNZEICHEN", "ORDNER", Me._datumFormat, ebene, Me.txtTrennzeichen.Text, Me.numTrennzeichenPosition.Value, False)
End Select
Else
'Feste Indexierung#
Me._regeln.Add(Me.lbxIndex.SelectedItem, _value, "FEST", Me._datumFormat, 0)
End If
Me.Close()
End Sub
Private Sub btnÜbersichtAbbrechen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnÜbersichtAbbrechen.Click
Me.Close()
End Sub
#End Region
#End Region
#Region "*************** Komplett ***************"
Private Sub btnKomplettWeiter_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnKomplettWeiter.Click
Me.ShowPanel(Me.pnlIndexauswahl)
Me.CancelButton = Me.btnIndexauswahlAbbrechen
End Sub
Private Sub btnKomplettZurück_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnKomplettZurück.Click
If Me._regelIndex > 8 And Me._regelIndex < 16 Then
Me.ShowPanel(Me.pnlIndexMethodeDatei)
Me.CancelButton = Me.btnDateiAbbrechen
Me._CountRegel(KOMPLETT, False)
ElseIf Me._regelIndex > 16 And Me._regelIndex < 24 Then
Me.ShowPanel(Me.pnlOrdnerEbene)
Me.CancelButton = Me.btnOrdnerEbeneAbbrechen
Me._CountRegel(KOMPLETT, False)
End If
End Sub
Private Sub btnKomplettAbbrechen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnKomplettAbbrechen.Click
Me._regelIndex = 0
Me.Close()
End Sub
#End Region
#Region "*************** Bereich ***************"
Private Sub btnSelektierenWeiter_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSelektierenWeiter.Click
If Me.numSelektierenErstesZeichen.Value > 0 And Me.numSelektierenAnzahlZeichen.Value > 0 Then
_removeZeros = chkboxLeadingzero1.Checked
Me.ShowPanel(Me.pnlIndexauswahl)
Me.CancelButton = Me.btnIndexauswahlAbbrechen
Else
MsgBox("Bitte geben Sie alle notwendigen Werte an.", MsgBoxStyle.Information, "Eingabe erwartet")
End If
End Sub
Private Sub btnSelektierenZurück_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSelektierenZurück.Click
If Me._regelIndex > 8 And Me._regelIndex < 16 Then
Me.ShowPanel(Me.pnlIndexMethodeDatei)
Me.CancelButton = Me.btnDateiAbbrechen
Me._CountRegel(BEREICH, False)
ElseIf Me._regelIndex > 16 And Me._regelIndex < 24 Then
Me.ShowPanel(Me.pnlOrdnerEbene)
Me.CancelButton = Me.btnOrdnerEbeneAbbrechen
'Me._CountRegel(BEREICH, False)
End If
End Sub
Private Sub btnSelektierenAbbrechen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSelektierenAbbrechen.Click
Me._regelIndex = 0
Me.Close()
End Sub
#End Region
#Region "*************** Rest ***************"
Private Sub btnRestZurück_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnRestZurück.Click
If Me._regelIndex > 8 And Me._regelIndex < 16 Then
Me.ShowPanel(Me.pnlIndexMethodeDatei)
Me.CancelButton = Me.btnDateiAbbrechen
Me._CountRegel(REST, False)
ElseIf Me._regelIndex > 16 And Me._regelIndex < 24 Then
Me.ShowPanel(Me.pnlOrdnerEbene)
Me.CancelButton = Me.btnOrdnerEbeneAbbrechen
Me._CountRegel(REST, False)
End If
End Sub
Private Sub btnRestWeiter_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnRestWeiter.Click
If Me.numRestErstesZeichen.Value > 0 Then
Me.ShowPanel(Me.pnlIndexauswahl)
Me.CancelButton = Me.btnIndexauswahlAbbrechen
Else
MsgBox("Bitte geben Sie alle notwendigen Werte an.", MsgBoxStyle.Information, "Eingabe erwartet")
End If
End Sub
Private Sub btnRestAbbrechen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnRestAbbrechen.Click
Me._regelIndex = 0
Me.Close()
End Sub
#End Region
#Region "*************** Trennzeichen ***************"
Private Sub btnTrennzeichenZurück_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnTrennzeichenZurück.Click
If Me._regelIndex > 8 And Me._regelIndex < 16 Then
Me.ShowPanel(Me.pnlIndexMethodeDatei)
Me.CancelButton = Me.btnDateiAbbrechen
Me._CountRegel(TRENNZEICHEN, False)
ElseIf Me._regelIndex > 16 And Me._regelIndex < 24 Then
Me.ShowPanel(Me.pnlOrdnerEbene)
Me.CancelButton = Me.btnOrdnerEbeneAbbrechen
Me._CountRegel(TRENNZEICHEN, False)
End If
End Sub
Private Sub btnTrennzeichenWeiter_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnTrennzeichenWeiter.Click
If Not Me.txtTrennzeichen.Text = "" And Me.numTrennzeichenPosition.Value > 0 Then
_removeZeros = chkRemoveZero.Checked
Me.ShowPanel(Me.pnlIndexauswahl)
Me.CancelButton = Me.btnIndexauswahlAbbrechen
Else
MsgBox("Bitte geben Sie alle notwendigen Werte an.", MsgBoxStyle.Information, "Eingabe erwartet")
End If
End Sub
Private Sub btnTrennzeichenAbbrechen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnTrennzeichenAbbrechen.Click
Me._regelIndex = 0
Me.Close()
End Sub
#End Region
#Region "*************** Dateiendung ***************"
Private Sub btnEndungZurück_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEndungZurück.Click
Me.ShowPanel(Me.pnlIndexMethodeDatei)
Me.CancelButton = Me.btnDateiAbbrechen
Me._CountRegel(ENDUNG, False)
End Sub
Private Sub btnEndungWeiter_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEndungWeiter.Click
If Not Me.txtEndung.Text = "" And Not Me.txtIndexwert.Text = "" Then
Me.ShowPanel(Me.pnlIndexauswahl)
Me.CancelButton = Me.btnIndexauswahlAbbrechen
Else
MsgBox("Bitte geben Sie alle notwendigen Werte an.", MsgBoxStyle.Information, "Eingabe erwartet")
End If
End Sub
Private Sub btnEndungAbbrechen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEndungAbbrechen.Click
Me._regelIndex = 0
Me.Close()
End Sub
#End Region
#Region "*************** Ordnerebene ***************"
Private Sub btnOrdnerEbeneZurück_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOrdnerEbeneZurück.Click
Me.ShowPanel(Me.pnlIndexMethodeOrdner)
Me.CancelButton = Me.btnOrdnerAbbrechen
If Me.rbOrdnerKomplett.Checked Then Me._CountRegel(KOMPLETT, False)
If Me.rbOrdnerBereich.Checked Then Me._CountRegel(BEREICH, False)
If Me.rbOrdnerRest.Checked Then Me._CountRegel(REST, False)
If Me.rbOrdnerTrennzeichen.Checked Then Me._CountRegel(TRENNZEICHEN, False)
End Sub
Private Sub btnOrdnerEbeneWeiter_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOrdnerEbeneWeiter.Click
If Me.rbOrdnerEbeneRoot.Checked Or Me.rbOrdnerEbeneParent.Checked Or Me.rbOrdnerEbeneBenutzerdefiniert.Checked Then
If Me.numOrdnerEbene.Value < 1 And Me.rbOrdnerEbeneBenutzerdefiniert.Checked Then
MsgBox("Bitte wählen Sie eine Ebene für die Ordnerauswahl.", MsgBoxStyle.Information, "Eingabe erwartet")
Exit Sub
Else
If Me.rbOrdnerKomplett.Checked Then
'Me._CountRegel(KOMPLETT, True)
Me.ShowPanel(Me.pnlIndexauswahl)
Me.CancelButton = Me.btnIndexauswahlAbbrechen
End If
If Me.rbOrdnerBereich.Checked Then
'Me._CountRegel(BEREICH, True)
Me.ShowPanel(Me.pnlSelektieren)
Me.CancelButton = Me.btnSelektierenAbbrechen
End If
If Me.rbOrdnerRest.Checked Then
'Me._CountRegel(REST, True)
Me.ShowPanel(Me.pnlRest)
Me.CancelButton = Me.btnRestAbbrechen
End If
If Me.rbOrdnerTrennzeichen.Checked Then
'Me._CountRegel(TRENNZEICHEN, True)
Me.ShowPanel(Me.pnlTrennzeichen)
Me.CancelButton = Me.btnTrennzeichenAbbrechen
End If
End If
Else
MsgBox("Bitte wählen Sie eine Art der Ordnerauswahl.", MsgBoxStyle.Information, "Eingabe erwartet")
End If
End Sub
Private Sub btnOrdnerEbeneAbbrechen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOrdnerEbeneAbbrechen.Click
Me._regelIndex = 0
Me.Close()
End Sub
#End Region
#Region "--------------- Formatabhängige Panels ---------------"
#Region "*************** Datum ***************"
Private Sub btnDatumZurück_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDatumZurück.Click
Me.ShowPanel(Me.pnlIndexauswahl)
Me.CancelButton = Me.btnIndexauswahlAbbrechen
'Me._CountRegel(ENDUNG, False)
End Sub
Private Sub btnDatumWeiter_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDatumWeiter.Click
If Me.rbDatumBenutzer.Checked Then
Me._datumFormat = Me.txtDatumBenutzer.Text
ElseIf Me.rbDatumJJJJ_MM_TT.Checked Then
Me._datumFormat = "JJJJ_MM_TT"
ElseIf Me.rbDatumJJJJMMTT.Checked Then
Me._datumFormat = "JJJJMMTT"
ElseIf Me.rbDatumTT_MM_JJJJ.Checked Then
Me._datumFormat = "TT_MM_JJJJ"
ElseIf Me.rbDatumTTMMJJJJ.Checked Then
Me._datumFormat = "TTMMJJJJ"
ElseIf Me.rbDatumTTpMMpJJJJ.Checked Then
Me._datumFormat = "TT.MM.JJJJ"
Else
MsgBox("Bitte wählen Sie ein Format, in dem das Datum vorliegen wird.", MsgBoxStyle.Question, "Eingabe erwartet")
Exit Sub
End If
If Not Me._datumFormat = "" Then
Me.InitialisiereÜbersicht()
Me.ShowPanel(Me.pnlÜbersicht)
Me.CancelButton = Me.btnÜbersichtAbbrechen
Else
MsgBox("Bitte geben Sie ein benutzerdefiniertes Format an, in dem das Datum vorliegen wird.", MsgBoxStyle.Question, "Eingabe erwartet")
Exit Sub
End If
End Sub
Private Sub btnDatumAbbrechen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDatumAbbrechen.Click
Me.Close()
End Sub
#End Region
#End Region
#End Region
#Region "=============== Sonstige Steuerelemente (Textfelder, etc.) ==============="
#Region "*************** Bereich ***************"
Private Sub txtSelektierenBeispieltext_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSelektierenBeispieltext.Enter
If Me.txtSelektierenBeispieltext.Text = "Tragen Sie hier einen Beispieltext zum Selektierten eines Teilbereichs ein." Then
Me.txtSelektierenBeispieltext.Text = ""
End If
End Sub
Private Sub txtSelektierenBeispieltext_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSelektierenBeispieltext.Leave
If Me.txtSelektierenBeispieltext.Text = "" Then
Me.txtSelektierenBeispieltext.Text = "Tragen Sie hier einen Beispieltext zum Selektierten eines Teilbereichs ein."
End If
Me.MarkiereSelektiertBeispieltext()
End Sub
Private Sub numSelektierenErstesZeichen_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles numSelektierenErstesZeichen.ValueChanged
If Me.numSelektierenErstesZeichen.Value > 0 Then
Me.numSelektierenErstesZeichen.BackColor = Color.White
Else
Me.numSelektierenErstesZeichen.BackColor = System.Drawing.Color.FromArgb(255, 192, 192)
End If
Me.MarkiereSelektiertBeispieltext()
End Sub
Private Sub numSelektierenAnzahlZeichen_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles numSelektierenAnzahlZeichen.ValueChanged
If Me.numSelektierenAnzahlZeichen.Value > 0 Then
Me.numSelektierenAnzahlZeichen.BackColor = Color.White
Else
Me.numSelektierenAnzahlZeichen.BackColor = System.Drawing.Color.FromArgb(255, 192, 192)
End If
Me.MarkiereSelektiertBeispieltext()
End Sub
Private Sub MarkiereSelektiertBeispieltext()
If Me.numSelektierenErstesZeichen.Value > 0 And Me.numSelektierenAnzahlZeichen.Value > 0 Then
Me.txtSelektierenBeispieltext.SelectionStart = Me.numSelektierenErstesZeichen.Value - 1
Me.txtSelektierenBeispieltext.SelectionLength = Me.numSelektierenAnzahlZeichen.Value
Else
Me.txtSelektierenBeispieltext.SelectionStart = 0
Me.txtSelektierenBeispieltext.SelectionLength = 0
End If
End Sub
#End Region
#Region "*************** Rest ***************"
Private Sub txtRestBeispieltext_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtRestBeispieltext.Enter
If Me.txtRestBeispieltext.Text = "Tragen Sie hier einen Beispieltext zum Selektierten eines Teilbereichs ein." Then
Me.txtRestBeispieltext.Text = ""
End If
End Sub
Private Sub txtRestBeispieltext_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtRestBeispieltext.Leave
If Me.txtRestBeispieltext.Text = "" Then
Me.txtRestBeispieltext.Text = "Tragen Sie hier einen Beispieltext zum Selektierten eines Teilbereichs ein."
End If
Me.MarkiereRestBeispieltext()
End Sub
Private Sub numRestErstesZeichen_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles numRestErstesZeichen.ValueChanged
If Me.numRestErstesZeichen.Value > 0 Then
Me.numRestErstesZeichen.BackColor = Color.White
Else
Me.numRestErstesZeichen.BackColor = System.Drawing.Color.FromArgb(255, 192, 192)
End If
Me.MarkiereRestBeispieltext()
End Sub
Private Sub MarkiereRestBeispieltext()
If Me.numRestErstesZeichen.Value > 0 Then
Me.txtRestBeispieltext.SelectionStart = Me.numRestErstesZeichen.Value - 1
Me.txtRestBeispieltext.SelectionLength = Me.txtRestBeispieltext.Text.Length - Me.numRestErstesZeichen.Value + 1
Else
Me.txtRestBeispieltext.SelectionStart = 0
Me.txtRestBeispieltext.SelectionLength = 0
End If
End Sub
#End Region
#Region "*************** Trennzeichen ***************"
Private Sub txtTrennzeichenBeispieltext_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTrennzeichenBeispieltext.Enter
Dim text As String = "Tragen Sie hier einen Beispieltext zum Trennen eines Teilbereichs ein."
If Not Me.txtTrennzeichen.Text = "" Then
text = text.Replace(" ", Me.txtTrennzeichen.Text)
End If
'MsgBox(Me.txtTrennzeichenBeispieltext.Text & vbNewLine & text)
If Me.txtTrennzeichenBeispieltext.Text = text Then
Me.txtTrennzeichenBeispieltext.Text = ""
End If
End Sub
Private Sub txtTrennzeichenBeispieltext_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTrennzeichenBeispieltext.Leave
Dim text As String = "Tragen Sie hier einen Beispieltext zum Trennen eines Teilbereichs ein."
If Not Me.txtTrennzeichen.Text = "" Then
text = text.Replace(" ", Me.txtTrennzeichen.Text)
End If
'MsgBox(Me.txtTrennzeichenBeispieltext.Text)
If Me.txtTrennzeichenBeispieltext.Text = "" Then
Me.txtTrennzeichenBeispieltext.Text = text
End If
Me.MarkiereTrennzeichenBeispieltext()
End Sub
Private Sub txtTrennzeichen_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTrennzeichen.TextChanged
If Not Me.txtTrennzeichen.Text = "" Then
Me.txtTrennzeichen.BackColor = Color.White
Me.txtTrennzeichenBeispieltext.Text = Me.txtTrennzeichenBeispieltext.Text.Replace(Me._trennzeichen_temp, Me.txtTrennzeichen.Text)
Me._trennzeichen_temp = Me.txtTrennzeichen.Text
If Not Me.txtTrennzeichen.Text = "" Then
Me.txtTrennzeichen.BackColor = Color.White
Else
Me.txtTrennzeichen.BackColor = System.Drawing.Color.FromArgb(255, 192, 192)
End If
Else
Me.txtTrennzeichen.BackColor = System.Drawing.Color.FromArgb(255, 192, 192)
Me.txtTrennzeichenBeispieltext.Text = Me.txtTrennzeichenBeispieltext.Text.Replace(Me._trennzeichen_temp, " ")
Me._trennzeichen_temp = " "
End If
Me.MarkiereTrennzeichenBeispieltext()
End Sub
Private Sub txtTrennzeichen_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTrennzeichen.Enter
If Not Me.txtTrennzeichen.Text = "" Then
Me._trennzeichen_temp = Me.txtTrennzeichen.Text
End If
End Sub
Private Sub txtTrennzeichen_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTrennzeichen.Leave
If Not Me.txtTrennzeichen.Text = "" Then
Me._trennzeichen_temp = Me.txtTrennzeichen.Text
End If
Me.MarkiereTrennzeichenBeispieltext()
End Sub
Private Sub numTrennzeichenPosition_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles numTrennzeichenPosition.ValueChanged
Try
If Me.numTrennzeichenPosition.Value > 0 Then
Me.numTrennzeichenPosition.BackColor = Color.White
Else
Me.numTrennzeichenPosition.BackColor = System.Drawing.Color.FromArgb(255, 192, 192)
End If
Me.MarkiereTrennzeichenBeispieltext()
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
Private Sub MarkiereTrennzeichenBeispieltext()
If Not Me.txtTrennzeichen.Text = "" And Me.numTrennzeichenPosition.Value > 0 Then
Dim anzTeilstringsInText As Integer = 0
Dim temp() As String = Me.txtTrennzeichenBeispieltext.Text.Split(Me.txtTrennzeichen.Text)
anzTeilstringsInText = temp.Length
'MsgBox(Me.numTrennzeichenPosition.Value & " >= " & temp.Length)
If anzTeilstringsInText > 0 And Me.numTrennzeichenPosition.Value <= anzTeilstringsInText Then
Dim Startposition As Integer = 0
Dim Anzahl As Integer = temp(Me.numTrennzeichenPosition.Value - 1).Length
Dim result As String = ""
If Me.numTrennzeichenPosition.Value - 2 >= 0 Then
For i As Integer = 0 To Me.numTrennzeichenPosition.Value - 2
Startposition += temp(i).Length + Me.txtTrennzeichen.Text.Length
result &= temp(i)
Next
Else
Me.txtTrennzeichenBeispieltext.SelectionStart = 0
Me.txtTrennzeichenBeispieltext.SelectionLength = 0
End If
'MsgBox(result & vbNewLine & Startposition & vbNewLine & Anzahl)
Me.txtTrennzeichenBeispieltext.SelectionStart = Startposition
Me.txtTrennzeichenBeispieltext.SelectionLength = Anzahl
Else
Me.txtTrennzeichenBeispieltext.SelectionStart = 0
Me.txtTrennzeichenBeispieltext.SelectionLength = 0
End If
Else
Me.txtTrennzeichenBeispieltext.SelectionStart = 0
Me.txtTrennzeichenBeispieltext.SelectionLength = 0
End If
End Sub
#End Region
#Region "*************** Dateiendung ***************"
Private Sub txtEndung_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEndung.TextChanged
If Not Me.txtEndung.Text = "" Then
Me.txtEndung.BackColor = Color.White
Else
Me.txtEndung.BackColor = System.Drawing.Color.FromArgb(255, 192, 192)
End If
End Sub
Private Sub txtIndexwert_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtIndexwert.TextChanged
If Not Me.txtIndexwert.Text = "" Then
Me.txtIndexwert.BackColor = Color.White
Else
Me.txtIndexwert.BackColor = System.Drawing.Color.FromArgb(255, 192, 192)
End If
End Sub
#End Region
#Region "*************** Datum ***************"
Private Sub txtDatumBenutzer_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDatumBenutzer.TextChanged
If Me.txtDatumBenutzer.Text.Length > 0 Then
Dim tempPosition As Integer = Me.txtDatumBenutzer.SelectionStart
If Me.txtDatumBenutzer.Text(tempPosition - 1) = "'" Then
Me.txtDatumBenutzer.Text = Me.txtDatumBenutzer.Text.Remove(tempPosition - 1, 1)
Me.txtDatumBenutzer.SelectionStart = tempPosition
'MsgBox("Darf net")
End If
Me._datumFormat = ClassDIHelpers.GetDatumFormat(Me.txtDatumBenutzer.Text)
If Me._datumFormat IsNot Nothing Then
Try
Me.lblTestDatum.Text = Now.ToString(Me._datumFormat)
'Dim datum = "2008_12_13"
'Dim datumText
'DateTime.TryParseExact(datum, Me._datumFormat, Nothing, Globalization.DateTimeStyles.None, datumText)
'Me.lblTestDatum.Text &= " - " & datumText
'CDate(Now()).ToString(ClassDateiimportHelpers.GetDatumFormat())
'DateTime.TryParseExact(Now.ToString, Me._datumFormat, Nothing, Globalization.DateTimeStyles.None, Me.lblTestDatum.Text)
'Now.ToString(Me._datumFormat)
Catch ex As Exception
Me.lblTestDatum.Text = "Es ist ein Fehler in der Formatdefinition aufgetreten."
End Try
Else
Me.lblTestDatum.Text = ""
End If
Else
Me.lblTestDatum.Text = ""
End If
End Sub
Private Sub txtDatumBenutzer_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDatumBenutzer.Enter
Me.rbDatumBenutzer.Checked = True
End Sub
#End Region
#Region "*************** Ordnerebene ***************"
Private Sub numOrdnerEbene_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles numOrdnerEbene.ValueChanged
If Me.numOrdnerEbene.Value > 0 Then
Me.numOrdnerEbene.BackColor = Color.White
Else
Me.numOrdnerEbene.BackColor = System.Drawing.Color.FromArgb(255, 192, 192)
End If
End Sub
Private Sub rbOrdnerEbeneBenutzerdefiniert_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rbOrdnerEbeneBenutzerdefiniert.CheckedChanged
If Me.rbOrdnerEbeneBenutzerdefiniert.Checked Then
Me.numOrdnerEbene.Focus()
End If
End Sub
Private Sub numOrdnerEbene_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles numOrdnerEbene.Click
Me.rbOrdnerEbeneBenutzerdefiniert.Checked = True
End Sub
#End Region
#End Region
Private Sub btnBeispiel_Click(sender As System.Object, e As System.EventArgs) Handles btnBeispiel.Click
If Me.ofDBeispiel.ShowDialog() = Windows.Forms.DialogResult.OK Then
Me.txtRestBeispieltext.Text = Me.ofDBeispiel.SafeFileName
End If
End Sub
Private Sub btnbeispiel1_Click(sender As System.Object, e As System.EventArgs) Handles btnbeispiel1.Click
If Me.ofDBeispiel.ShowDialog() = Windows.Forms.DialogResult.OK Then
Me.txtSelektierenBeispieltext.Text = Me.ofDBeispiel.SafeFileName
End If
End Sub
Private Sub btnbeispiel2_Click(sender As System.Object, e As System.EventArgs) Handles btnbeispiel2.Click
If Me.ofDBeispiel.ShowDialog() = Windows.Forms.DialogResult.OK Then
Me.txtTrennzeichen.Text = Me.ofDBeispiel.SafeFileName
End If
End Sub
Private Sub chkboxNow_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles chkboxNow.CheckedChanged
If chkboxNow.Checked Then
Me.txtValue.Text = "akt. Datum()"
Me.txtValue.Enabled = False
chkboxNow.Text = "Manueller Wert"
Else
Me.txtValue.Text = ""
Me.txtValue.Enabled = False
chkboxNow.Text = "Aktuelles Datum"
End If
End Sub
End Class