Hi. Ein einer Methode aus einem anderen Thread muss auf mein Label zugreifen und prüfen, ob ein ":" in dem Label drin steht. Wie mache ich den Vergleich?
//// Also, so gehts nicht.
if(lbl_LaufzeitLader.Dispatcher.BeginInvoke(DispatcherPriority.Normal, new Action(() => lbl_LaufzeitLader.Content.ToString())).ToString() == ":")
{
}
Na ja, ich kann ja auch zuerst noch mit .CheckAccess() schauen ob ich evtl. im gleichen Thread bin in dem das Label (Control) erstellt wurde. Wenn ich da aber nicht drin bin, dann muss ich die Abfrage auch irgendwie hinbekommen:
if (lbl_LaufzeitLader.Content.ToString() == ":")
{
...
}
Nun, wie kann ich den Inhalt vom Label in einem anderen Thread abfragen?
Hallo, hatte es selbst noch gebacken bekommen. Hier mal der Code, falls jemand ein ähnliches Problem hat:
/// <summary>
/// Delegate für das Update von Labels erstellen
/// </summary>
/// <param name="lbl"></param>
private delegate void UpdateUIDelegateLabel(Label lbl);
//// Delagaten instanziieren und mit Methode verknüfen
UpdateUIDelegateLabel updateUiDelegate = new UpdateUIDelegateLabel(UpdateButtonUI);
//// Update der Labels
lbl_LaufzeitLader.Dispatcher.Invoke(DispatcherPriority.Normal, updateUiDelegate, lbl_LaufzeitTasten);
private void UpdateButtonUI(Label lbl)
{
//// Tu irgend etwas mit dem Label
lbl.Content = "Hallo";
}