Announcement

Collapse
No announcement yet.

Seitennummer variabel

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Seitennummer variabel

    Hallo zusammen,

    ich habe in meinem MainWindow ein Frame dessen Inhalt ist angelegten Seiten befülle: sie heißen Page1, Page2, Page3.
    Das ist mein Code dazu, um mir zum Beispiel die Page2 anzeigen zu lassen:

    Main.Content = New Page2

    Page2 erscheint in Grün.

    Was ich aber möchte ist die Nummer der aktuellen Seite auslesen, dieser 1 dazuzählen und dann die Seite mit der neuen Nummer anzeigen.

    An die Seitennummer komme ich ran, nur wie gestalte ich jetzt den Namen der Seite zusammen mit der ausgelesenen Nummer?

    Dim myPageNo = Main.Content.[GetType]()
    Dim myPageNo1 = myPageNo.ToString()
    myPageNo1 = Mid(myPageNo1, Len("Unterweisungen.Page") + 1)

    Dim myPageNo2 As Integer = myPageNo1 + 1
    Dim myNextPage = "Page" & myPageNo2

    Soweit passt alles, nur den neuen Seitennamen einzufügen funktioniert nicht.

    Habe es erstmal so probiert:

    Main.Content = New Page(myNextPage)

    Den Seitennamen in der Klammer oder allein ohne Page vor der Klammer nimmt er nicht ...

    Kann jemand helfen?
    Danke!

  • #2
    New ist der Befehl um eine neues Objekt der Klasse Page anzulegen.
    Der Konstruktor kennt keine Parameter
    https://docs.microsoft.com/de-de/dot...tframework-4.8
    Man könnte
    https://docs.microsoft.com/de-de/dot...tframework-4.8
    benutzen

    Christian

    Comment


    • #3
      Ich kann nur raten das es um WPF geht.
      Mit myNextPage scheint du einen Typname zu basteln. Also den Klassennamen einer Ableitung von Page. Es ist also keine Page insofern kann ein new Page nicht funktionieren. Du willst ja keine Page Instanz sondern eine Instanz des Typs den du als string hast.

      Einen Typen zu instanziieren anhand eines Strings den man zur Laufzeit zusammenbastelt klingt nicht nach was man normalerweise tun sollte. Dazu kannst du aber wenn du willst Activator.CreateInstance verwenden.
      Ein typisches herangehen wäre ein Factory Pattern zu benutzen. Also eine Klasse die dir ein Mapping string zu Typ bereithält. Diese Klasse kannst du dann fragen "gib mir für folgenden string den passenden Typ" oder du läßt die Factory auch gleich eine Instanz erzeugen.

      Comment

      Working...
      X