Thema: Delphi Übersetzung in VB-Code

Einzelnen Beitrag anzeigen

DbSam

Registriert seit: 27. Nov 2014
5 Beiträge
 
#9

AW: Übersetzung in VB-Code

  Alt 27. Nov 2014, 15:07
Hhmm, wie schaut das dann in C# genau aus?
Ein Enum ist in VB ein Enum. Du kannst den Wert aber auch als String ausgeben, was aber bei Leerstrings wie hier im Beispiel nicht funktioniert.

Zu Deinem PS:
Nein, da hast Du recht, habe ich vorhin nicht dran gedacht.
Jetzt vollständig gekapselt, von Außen nur noch GetValue und das Enum erreichbar:
Habe der Einfachheit halber noch eine Klasse als Hülle drum gelegt...
Code:
Public Class Approx
    Private o As New GEDCOMDateApproximatedColl
    Public Enum eGEDCOMApproximated
        daExact
        daAbout
        daCalculated
        daEstimated
    End Enum

    Public Function GetValue(ByVal Item As eGEDCOMApproximated) As String
        Return o.GEDCOMDateApproximated(Item)
    End Function

    Private Class GEDCOMDateApproximatedColl
        Inherits CollectionBase

        Friend Sub New()
            Me.Add("")
            Me.Add("ABT")
            Me.Add("CAL")
            Me.Add("EST")
        End Sub

        Friend Function GEDCOMDateApproximated(ByVal Item As eGEDCOMApproximated) As String
            Dim o As GEDCOMApproximated = CType(Me.InnerList(Item), GEDCOMApproximated)
            Return o.Value
        End Function

        Private Sub Add(ByVal Item As String)
            Dim o As New GEDCOMApproximated
            o.Value = Item
            Me.InnerList.Add(o)
        End Sub

        Friend Class GEDCOMApproximated
            Friend Property Value As String
        End Class
    End Class
End Class
Deklaration und Aufruf so:
Code:
   'Deklaration wie und wo benötigt:
    Public GEDCOMDateApproximated As New Approx

    'Aufruf in etwa so:
    Private Sub Beispiel() Handles Button1.Click
        MessageBox.Show(Me.GEDCOMDateApproximated.GetValue(Approx.eGEDCOMApproximated.daAbout))
    End Sub

Gruß Carsten
  Mit Zitat antworten Zitat