Ich habe in letzter Zeit bei der Verwendung von WPF und Databinding gelernt, es ist gute Praxis, keine der Felder zu benennen, sondern nur mit den Eigenschaften in den anderen Klassen zu verknüpfen. Mein Problem ist jetzt, wie füge ich die Daten aus 3 Textboxen hinzu (der Benutzer gibt ein), speichere die verknüpften Informationen in dem Modell, das dann die Kontoinformationen in die Listbox auf der Seite schreibt. Ich muss die Daten meinem Modell hinzufügen. Mein Code von main.xaml ist unten:Datenbindung mit unbenannten Textfeldern und Listbox
<ListBox ItemsSource="{Binding Path=Files}" SelectedItem="{BindingPath=CurrentItem}" />
<TextBox Text="{Binding Path=bankaccount}"/>
<TextBox Text="{Binding Path=accountnumber}"/>
<TextBox Text="{Binding Path=accounttype}"/>
<Button Content="Save Data To Listbox" Click="Save_Click"/>
Jetzt werde ich meine FileModel Klasse zeigen, die alle meine Eigenschaften besitzt, die aus den Textfeldern
private short _BankAccount;
private long _AccountNumber;
private char _AccountType;
public short bankaccount{ get { return _BankAccount;} set {_BankAccount= value; Notify("bankaccount"); } }
public long accountnumber{ get { return _AccountNumber;} set {_AccountNumber= value; Notify("accountnumber"); } }
public char accounttype{ get { return _AccountType;} set{_AccountType= value; Notify("accounttype"); } }
ich eine Klasse verwenden genannt ProgramModel sein wird, wie mein Mittelpunkt zwischen der Startseite und meine FileModel Seite und hier ist der Code:
public class ProgramModel : INotifyPropertyChanged
{
public ObservableCollection<FileModel> Files { get; set; }
private FileModel _currentItem;
public FileModel CurrentItem { get { return _currentItem; } set { _currentItem = value; Notify("CurrentItem"); } }
public ProgramModel()
{
Files = new ObservableCollection<FileModel>();
}
und zum Schluss habe ich meine Startseite:
Ich fühle mich, als würde ich die Dateisammlung fälschlicherweise aus dem Speichern Schaltfläche Ereignis hinzufügen. Wenn ihr mir helfen könnt, wäre das großartig! Alle 3 Textfelder und das Listenfeld befinden sich auf der Hauptseite. Lass es mich wissen, wenn du irgendwelche Fragen hast. Außerdem ist dies eine Lernerfahrung, also lass es mich wissen, wenn ich zu viel Code gepostet habe oder nicht genug. Vielen Dank!
Eigenschaften wie 'bankaccount' sollten PascalCased sein. –