Ich versuche, den Text eines Textfelds an eine Eigenschaft in meiner Klasse zu binden, und es funktioniert nicht, ich bearbeite die Eigenschaft im Code hinter, aber ich sehe die Zeichenfolge im Textfeld nicht Dies ist die Klasse und die Eigenschaft, die ich zu binden versuche, heißt songFolder.wpf Textbox Textbindung
public class song : INotifyPropertyChanged
{
public string title {get; set; }
public string artist { get; set; }
public string path { get; set; }
public static string folder;
public string songsFolder { get { return folder; } set { folder = value; NotifyPropertyChanged("songsFolder"); } }
public event PropertyChangedEventHandler PropertyChanged;
private void NotifyPropertyChanged(String propertyName)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
public song()
{
}
public song(string title, string artist, string path)
{
this.title = title;
this.artist = artist;
this.path = path;
}
}
und der XAML, die Ressource und das Textfeld wich i tring enthält am
<Window x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:WpfApplication1"
Title="Song Filler" Height="455" Width="525">
<Window.Resources>
<local:song x:Key="song"/>
</Window.Resources>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="auto"/>
</Grid.ColumnDefinitions>
<TextBox Name="browseBox" Text="{Binding Source={StaticResource ResourceKey=song}, Path=songsFolder, Mode=TwoWay}" Grid.Column="0"></TextBox>
<Button Grid.Column="1" Width="auto" Click="Browse">browse</Button>
</Grid>
-------------- zu binden Update- --------------- habe ich die nächste Zeile zu ctor des Fensters:
BrowseBox.DataContext=new song()
Und während ich sah, Debuggen, dass die Eigenschaft c hängen, aber der Text in der Textbox ist nicht.
Ihre benachrichtigen Das Ereignis hat die falsche Eigenschaft: 'NotifyPropertyChanged (" sPath ");' Sollte 'NotifyPropertyChanged (" songsFolder ")' sein. – McGarnagle
Danke, ich habe es geändert, aber es funktioniert immer noch nicht – alostr
Es könnte uns helfen, wenn Sie erklären, was falsch ist darüber hinaus nur "nicht funktioniert" ... – McGarnagle