danke dir!
ja , bei nächsten mal denke ich dran.
Hallo Zusammen,
ich habe mal eine kurze frage zu
ObservableCollection<myname> liste = new ObservableCollection<myname>();
ich benutze diese Collecion viel in meiner WPF. Jetzt ist meine ansicht fast fertig und es Funktioniert alles. jetzt hat ein Kollege von mir, warum auch immer, ein Code Cleaner über das Programm laufen lassen.......
jetzt steht das aber nicht mehr so da
ObservableCollection<myname> liste = new ObservableCollection<myname>();
sondern so
ObservableCollection<myname> liste = [];
ich konnte so nicht dazu finden ist das zweite richtig? oder kann das zu Problemen führen?
Hallo BlonderHans,
danke, ich werde mich mal in MVVM einlesen.
Hallo Abt und Th69, danke vorab für eure Antworten.
Ich möchte kurz den Hintergrund des Projektes erläutern. Diese Oberfläche wird für ein neues Prüfsystem was wir entwickeln und der Vorgänger wurde in vb.net geschrieben und wurde in Forms umgesetzt. Das ganze besteht nachher aus mehreren Klasse wo die einzelnen Prüfschritte drin sind. Aus diesen Klassen soll halt ein Label ständig Aktualisiert werden und das nicht nur auf einer Page. ist das überhaupt möglich, wie ich mir das gedacht habe? Es soll nachher eine Page geben mit Informationen für den Anwender und eine Page für den Entwickler. Die Main Test Klasse die ich abgebildet habe ist nur ein versuch das Label aus einer anderen Klasse zu aktualisieren. Die wird es in Zukunft nicht mehr geben. @Th69 Ich habe in der Main Test klasse die Information_Cls als Basisklasse hinzugefügt. Hier ist eine Instanz UP als UserPage drin.
Hallo,
das ist meine Page cs.
namespace Testsystem_Standard_view.Pages
{
/// <summary>
/// Interaktionslogik für UserPage.xaml
/// </summary>
public partial class UserPage : Page, INotifyPropertyChanged
{
public event PropertyChangedEventHandler? PropertyChanged;
private static String _LabTime;
MainTest MT = new MainTest();
public UserPage()
{
InitializeComponent();
DataContext = this;
}
public String LabTime
{
get { return _LabTime; }
set
{
_LabTime = value;
OnPropertyChanged();
}
}
protected void OnPropertyChanged([CallerMemberName] string name = null)
{
this.PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(name));
}
#region Button
private void Button_Start(object sender, RoutedEventArgs e)
{
//LabTime = "test";
MT.RunTest();
}
private void Button_Stop(object sender, RoutedEventArgs e)
{
}
private void Btn_Loop_Click(object sender, RoutedEventArgs e)
{
}
#endregion
}
}
Ich verlasse diese Klasse über den Button Start und gehe in die Main Test Klasse.
Diese hat aktuell nur ein Void , da ich noch am Anfang bin und ich mich neu in WPF einarbeite.
namespace Testsystem_Standard_view
{
class MainTest:Information_Cls
{
internal void RunTest()
{
UP.LabTime = "Test";
}
}
}
ich hoffe das hilft und ist einigermaßen verständlich.
Hallo,
ich habe ein Problem bei meiner WPF Anwendung. Ich habe ein Main Window mit einem Frame wo ich mehrere Pages laden kann. Jetzt möchte ich auf der geladenen Page den Inhalt eines Labels ändern aber aus einer Anderen Klasse heraus und nicht aus der cs der Page selber. Aus der Page selber funktioniert es wunderbar mit INotifyPropertyChanged aber aus einer anderen Klasse funktioniert das nicht. kann mir jemand ein Tipp geben? Wenn ich das Programm im Debug mode anhalte und er in der anderen klasse ist Zeigt mir die Page an das diese nicht Visible ist obwohl sie noch da ist. Ist das der Grund?