2017-11-07 3 views
-2
vorkommenden

Also, wenn ich das Fenster Hintergrund aus dem Code (preferences.xaml.cs) direkt hinter ändern mitPrevent Stapel von Überlaufausnahme

this.Background = new ImageBrush(new BitmapImage(new Uri(@"pack://application:,,,/Connect_4;component/resources/abstractPreferences.jpg"))); 

es funktioniert gut, aber wenn ich es von einer Klasse ändern

mit
Preferences preferences = new Preferences(); 
preferences.Background = new ImageBrush(new BitmapImage(new Uri(@"pack://application:,,,/Connect_4;component/resources/abstractPreferences.jpg"))); 

es ergibt sich eine StackOverflow-Ausnahme bei InitializeComponent();

+1

Warum erstellen Sie eine Instanz von Einstellungen wie diese? – thewindev

+0

@thewindev Es hatte bereits eine Referenz, also dachte ich, ich könnte das einfach benutzen, wie soll ich das machen? –

+2

Schauen Sie sich die Stack-Trace an. Die Sache, die immer und immer wieder passiert, ist die unbegrenzte Rekursion. –

Antwort

1

Ich denke Präferenzen ist ein Name Ihrer Kontrolle. Und im Konstruktor der Einstellungen erstellen Sie ein neues Preferences-Steuerelement. Aus diesem Grund haben Sie eine StackOverflow-Ausnahme.