C# Windows forms textbox.text nicht ändern

public partial class A : UserControl
{
  private string _x;
  public string X {
    get { return _x; }
    set { 
      this._x = value;
      this.textBox1.Text = this._x; 
  }
}
public partial class B : WinForm
{
   public B() {
     //Add usercontrol A to Groupbox1
     //Set A.X = "hello world"
   }
}
public class MainForm: WinForm
{
    public void button1_Click(....) { 
       B bForm = new B();
       bForm.ShowDialog();
    }
}

Zur design-Zeit, habe ich die textbox1.Text="Hallo". In der Main-Klasse, ich habe eine Schaltfläche, öffnet sich ein neues form B und form B ich habe ein Gruppenfeld hinzufügen dieses Steuerelement Ein, und ändern Sie die X-Eigenschaft-Wert = "Hallo Welt", aber die textBox1.Text ändert sich nicht auf der UI. Wenn ich den Haltepunkt nach der textbox1.Text = dieser._x, es zeigt den Wert geändert haben, um "hello world" aber es ist nicht reflektiert auf das UI?

Warum? Und wie man es beheben?

Dank einem Haufen.

  • Möchten Sie den text der textbox gleiche wie die X-als ordnen Sie this.txtBox1.Text = this._x;
  • Danke. Ich aktualisiere einfach die Frage.
  • Benutzt du dataBinding?
  • Nein, ich glaube nicht, verwenden Sie Datenbindung. Frage mich, warum das eingestellt .Text direkt nicht funktioniert.
  • Zeigen Sie Ihre ` //Anzeigen der Form B` code
  • Ich habe gerade aktualisiert.
  • Nicht sehen, Ihr B-Konstruktor-code, aber Bedenken Sie, dass Ihre X Eigenschaft serialisiert in InitializeComponent Methode und wenn Sie X vor InitializeComponent dann wird es gelöscht werden, in InitializeComponent Methode.
  • Es sieht aus, als ob dieser Wert wird überschrieben, nachdem Sie ihn festgelegt haben. Ich würde versuchen, alle Verweise auf textBox1 und setzen Sie einen Haltepunkt in jeder Zeile, wo der Text-Eigenschaft geändert wird (wenn es solche Linien). Wenn Sie etwas nicht finden so, ich möchte hinzufügen, ein TextChanged-Ereignis mit einer einfachen Methode mit nur einem Haltepunkt, um zu verstehen, Wann/wo der Wert geändert wird.
  • ich werde auch ein paar weitere tests morgen. Post wird später zu aktualisieren.
  • Haben Sie einen Blick auf diese & es ist eine perfekte Lösung:stackoverflow.com/questions/2881409/...

InformationsquelleAutor HNGO | 2013-02-15
Schreibe einen Kommentar