Die Bindung einer Textbox an ein property in WPF
Ich habe eine Textbox in eine Benutzer-Steuerelement-ich werde versuchen, ein update von meinem Haupt-Anwendung, aber wenn ich die textbox.Text-Eigenschaft, die es nicht Anzeige den neuen Wert (obwohl textbos.Text enthält die richtigen Daten). Ich versuche mich zu binden, mein Textfeld, um eine Immobilie zu erhalten, um dieses, aber ich weiß nicht wie, hier ist mein code -
MainWindow.xaml.cs
outputPanel.Text = outputText;
OutputPanel.xaml
<TextBox x:Name="textbox"
AcceptsReturn="True"
ScrollViewer.VerticalScrollBarVisibility="Visible"
Text="{Binding <!--?????--> }"/> <!-- I want to bind this to the Text Propert in OutputPanel.xmal.cs -->
OutputPanel.xaml.cs
namespace Controls
{
public partial class OutputPanel : UserControl
{
private string text;
public TextBox Textbox
{
get {return textbox;}
}
public string Text
{
get { return text; }
set { text = value; }
}
public OutputPanel()
{
InitializeComponent();
Text = "test";
textbox.Text = Text;
}
}
}
InformationsquelleAutor Eamonn McEvoy | 2011-02-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
Musst du eine DataContext in einige übergeordnete Textfeld, zum Beispiel:
Dann die Bindung:
Solltest du auch nicht benötigen diesen - in Bezug auf bestimmte Elemente aus dem code hinter ist in der Regel eine schlechte Praxis:
<TextBox DataContext="{Binding ElementName=[YOUR_TEXTBOX_NAME]}" Text="{Binding Text}"/>
InformationsquelleAutor Matěj Zábský
Ich hoffe, dieses Beispiel wird Euch helfen.
1) Erstellen
UserControl
.2) Hinzufügen, um XAML -
<TextBlock Text="{Binding Path=DataContext.HeaderText}"></TextBlock>
3) In der code-behind des
UserControl
hinzufügen4), die Außerhalb der Kontrolle und sagen wir mal in den
MainWindow Load
Fall, Sie haben zu tun, wieInformationsquelleAutor Developer
Wenn Ihr beginnen zu binden Eigenschaften ich schlage vor, Sie Lesen, einige Artikel auf MVVM.
Dies ist eine sehr leistungsfähige Architektur, die Sie verwenden können, auf WPF. Ich fand es sehr nützlich in meinen Projekten.
Überprüfen Sie diese ein.
InformationsquelleAutor jpsstavares