none
Wert aus Fenster1 an Fenster2 übergeben RRS feed

  • Frage

  • Es sollte eigentlich  eine einfache Sache sein.

    Gegeben: Fenster1; Fenster2, TextBox in Fenster2

    Beim Ereignis auf Fenster1 soll sich Fenster2 öffnen und ein Wert in TextBox geschreiben werden.

    Es funktioniert nicht. Was mache ich falsch?

    Ereignis...
    
    Fenster2.ShowDialog() 'Das funktioniert gut
    
    Fenster2.TextBox.Text = ("Test") 'Das geht nicht
    


    Es geht mir um WPF(XAML) Visual Studio Proff. 2010, VisualBasic, Win7 und verständliche Hilfe. Als Quelle nutze ich oft msdn Hilfe.
    Donnerstag, 1. September 2011 21:40

Antworten

  • Hi Thomas,

    wenn "Fenster2.xaml" der Name Deines Fenster ist (air-code):

    Dim win as New Fenster2()
    win.DeineTextBox.Text="Test"
    win.ShowDialog()
    



    Cheers,
    Olaf
    http://blogs.intuidev.com
    • Als Antwort markiert Thomas2705 Sonntag, 4. September 2011 18:42
    Freitag, 2. September 2011 07:41
  • Wenn du direkt das Control verändern willst, dann musst den Zugriffstype von internal auf public setzen.
    Besser wäre jedoch eine Eigenschaft darum zu kapseln und den Wert darüber zu setzen.

    public partial class Fenster2
    {
    
    ...
    
      public string TextDeinerTextBox
      {
         get
         {
            return this.TextBox.Text;
         }
         set
         {
            this.TextBox.Text = value;
         }
      }
    
    }
    

    • Als Antwort markiert Thomas2705 Sonntag, 4. September 2011 18:42
    Sonntag, 4. September 2011 13:26
    Beantworter

Alle Antworten

  • Hi Thomas,

    wenn "Fenster2.xaml" der Name Deines Fenster ist (air-code):

    Dim win as New Fenster2()
    win.DeineTextBox.Text="Test"
    win.ShowDialog()
    



    Cheers,
    Olaf
    http://blogs.intuidev.com
    • Als Antwort markiert Thomas2705 Sonntag, 4. September 2011 18:42
    Freitag, 2. September 2011 07:41
  • Wenn du direkt das Control verändern willst, dann musst den Zugriffstype von internal auf public setzen.
    Besser wäre jedoch eine Eigenschaft darum zu kapseln und den Wert darüber zu setzen.

    public partial class Fenster2
    {
    
    ...
    
      public string TextDeinerTextBox
      {
         get
         {
            return this.TextBox.Text;
         }
         set
         {
            this.TextBox.Text = value;
         }
      }
    
    }
    

    • Als Antwort markiert Thomas2705 Sonntag, 4. September 2011 18:42
    Sonntag, 4. September 2011 13:26
    Beantworter