2010-12-21 7 views
3

Ich habe ein WPF-Steuerelement (ICSharpCode.AvalonEdit.TextEditor) in einem Winforms-Projekt in einem ElementHost. Ich habe mit dem Debugger bestätigt, dass der TextEditor tatsächlich als Kind des ElementHosts gesetzt ist, und alle seine Eigenschaften korrekt gesetzt sind, er ist nur unsichtbar und kann nicht mit ihm interagieren (als ob Sie die IsVisible Eigenschaft gesetzt hätten) zu falsch).WPF-Steuerelement in ElementHost ist unsichtbar

Das ElementHost erscheint, und ich kann damit interagieren, aber es ist eher, dass das Child-Steuerelement nicht sichtbar ist. Ich habe überprüft, dass die Visibility- und IsVisible-Eigenschaften des TextEditors so sind, wie sie sein sollten.

Ich habe noch nie eine WPF-App geschrieben, also versuchen Sie irgendwelche Vorschläge, egal wie einfach das bedeuten könnte, dass meine WPF-Kontrolle unsichtbar ist. Es könnte mit dem ElementHost, dem Steuerelement selbst oder mit einem bestimmten AvalonEdit-Verhalten zu tun haben.

Irgendwelche Vorschläge?

TextEditor.Margin = 1000; 

Und dieser Marge wurde für die gesamte Steuer: viel zu hoch, wie diese

+0

Ich habe versucht, das gleiche Problem zu haben, das Sie haben. Ich habe eine neue Winforms-Anwendung erstellt und HostElement im Formular hinzugefügt. Im Code dahinter schrieb ich TextEditor te = new TextEditor(); this.elementHost1.Child = te; Und es funktioniert –

+0

Haben Sie eine beliebige Breite und Höhe festgelegt oder VerticalAlignment und HorizontalAlignment auf dem wpf-Steuerelement festgelegt? –

+0

Vertikale und horizontale Ausrichtung sind beide auf Strech eingestellt, aber sowohl Breite als auch Höhe sind auf NaN (lol) eingestellt. Wie ist das passiert? Wie ändere ich die Größe der TextBox, um sie an den ElementHost anzupassen? – Miguel

Antwort

0

Es stellt sich heraus, dass ich diese Marge Eigenschaft des Texteditor für eine Reihe einstellen.