Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Portal
  • |
  • Mitglieder
Beiträge von MarsStein
Thema: (A)Sync HttpWebRequest.GetResponse(): Wieso muss für ein separater Thread aufgemacht werden?
Am im Forum: Grundlagen von C#

Hallo

Zitat
Wird bei dem Aufruf

HttpWebRequest request = HttpWebRequest.Create(/*url*/) as HttpWebRequest;
using(HttpWebResponse response = request.GetResponse() as HttpWebResponse /* <-- here */)
{ /* stuff */ }
nicht gewartet, bis die Response voll da ist ?
Doch.
Zitat
Ich vergleiche das ein wenig mit

string s = File.ReadAllText(/*fullPath*/*)

Wenn die Datei sehr groß ist, dann hängt dieser Block eben ein wenig, aber der Leseprozess bricht nicht einfach mittendrin ab.
Korrekt. GetResponse verhält sich genauso.

Nur wer BeginGetResponse sagt, muss auch EndGetResponse sagen. Das ist dann eben asynchron, und Du wirst per Callback informiert wenn die Response geladen ist.
Damit erreichst Du, dass die aufrufende Methode nicht blockiert wird während die Response geladen wird.

Mittlerweile würde man das aber ehen über async/await lösen (die Methode GetResponseAsync ist seit .NET 4.5 vorhanden):

HttpWebRequest request = HttpWebRequest.Create(/*url*/) as HttpWebRequest;
using(HttpWebResponse response = await request.GetResponseAsync() as HttpWebResponse)
{ /* stuff */ }

Gruß, MarsStein

Thema: Konstruktor überladen - das effizienteste Vorgehen für meine App?
Am im Forum: Grundlagen von C#

Hallo,

noch eine kleine Anmerkung:

Zitat von GeneVorph
Ich hatte genau diese Frage hier schon mal gepostet, bezüglich dessen, ob ich eine Form für 2 Aufgaben nutzen kann, wenn sie von der GUI her genau gleich daherkommt, lediglich einmal für das Editieren und einmal für das Neuerstellen benutzt wird. Damals wurde mit DRY argumentiert.
Sicher meinst Du damit den Thread Würde man in der Praxis eine Form für zwei versch. Verwendungszwecke nutzen?
Wenn Du den jetzte nochmal liest, wirst Du feststellen, dass die Antworten von Sir Rufo und chilic keineswegs dem widersprechen, was hier geschrieben wurde, sonder im Gegenteil sehr gut dazu passt

Gruß, MarsStein

Thema: Konstruktor überladen - das effizienteste Vorgehen für meine App?
Am im Forum: Grundlagen von C#

Hallo,

Zitat von GeneVorph
ob man SRP DRY gegenüber vorzieht. Gibt es da eine Hierarchie?
Hmm... in einer guten Umsetzung sollten sich die beiden Prinzipien gar nicht (oder nur minimal) widersprechen, sondern beide brücksichtigt werden.
Für eine Schichtentrennung, die das erlaubt, gibt es eine ganze Reihe Patterns. Für WPF gibt es das maßgeschneiderte MVVM, für eine Umsetzung in WinForms eignet sich z.B. MVP (Model-View-Presenter) ganz gut.

Als Basis hättest Du dann ein z.B. ein Model für Deine Schulklasse, und eine View die sich um die Darstellung kümmert. Dazwischen der Presenter, der sich darum kümmert, der View Daten zur Verfügung zu stellen, und auf Ereignisse der View zu reagieren (z.B. ein Event, das ausgelöst wird, wenn die Bearbeitung beendet ist).
Nun könnte man den Presenter entscheiden lassen, was für Texte im Titel/auf den Knöpfen stehen (dazu dann in de Schnittstelle der View entsprechende Properties vorsehen) oder man könnte eine EditView und eine CreateView haben, die jeweils auf einer gemeinsamen Basisklasse basieren oder oder oder... es sind nur Patterns, eine richtige Umsetzung kann auf unterschiedleiche Weise erreicht werden.

Schau Dir am besten mal ein paar Beispiele dazu an.
Es muss auch nicht MVP sein, wie gesagt gibt es eine ganze Reihe an Pattern (z.B. MVC), die unterschiedlich Ansätze der Zuständigkeiten der einzelnen Teile verfolgen, sich aber vom Prinzip her ähneln.

Schau z.B. mal Differences between MVC and MVP for Beginners
Da werden auch die Pattern nochmal erklärt.

Gruß, MarsStein

Thema: Konstruktor überladen - das effizienteste Vorgehen für meine App?
Am im Forum: Grundlagen von C#

Hallo,

zunächst mal möchte ich LaTino beipflichten.

Und dann noch einen Hinweis nachschieben zu überladenen Konstruktoren, da das auch konkret ein Teil der ursprünglichen Fragestellung war (Stichwort DRY): Du kannst von einem überladenen Konstruktor auch einen anderen aufrufen.
In Deinem Fall (auch wenn es hier nicht wirklich angebracht ist) würde das so aussehen:

public classNewOrEdit(MenuItemTasks taskName): this(taskName, "new")
        {
        }

public classNewOrEdit(MenuItemTasks taskName, string SchoolClassLabel)
        {
            InitializeComponent();
            SetForm(taskName, SchoolClassLabel);
        }

Ich sehe das Problem hier aber auch eher in der Architektur - und wenn Du schon auf DRY anspielst, dann denk auch an das Single-Responsibility-Prinzip, Deine Form hat nämlcih jetzt definitiv mehrere Verantwortlichkeiten.

Gruß,MarsStein

Thema: Informationen speichern beim wechseln der Form
Am im Forum: Grundlagen von C#

Hallo,

Zitat
Ob nun deine GUI-Instanzen neu erzeugt werden, oder wiederverwendet werden, spielt dann keine Rolle.
Natürlich spielt das eine Rolle, vor allem wenn die Instanzen nicht mit Close geschlossen, sondern mit Hide versteckt werden - die bleiben ja dann erst mal im Speicher rumliegen, und das ist zumindest unschön wenn nicht sogar schlicht falsch.

Gruß, MarsStein

Thema: Informationen speichern beim wechseln der Form
Am im Forum: Grundlagen von C#

Hallo,

bitte versteh das nicht falsch, Du hast ja schließlich im Grundlagenforum gepostet, und da sind solche Fragen (zumindest in meinen Augen) schon OK
Mit den genannten Informationen solltest Du Dich dann aber halt erst mal auseinandersetzen.
Den Kern des Problems habe ich Dir ja genannt, und in dem Link von emuu wird auch beschrieben, wie man sowas löst.

Gruß, MarsStein

Thema: Informationen speichern beim wechseln der Form
Am im Forum: Grundlagen von C#

Hallo,

Zitat von emuu
oder über eine statische Variable
Bitte nicht. Das löst jedenfalls nicht das Problem, das beim gezeigten Code vom TE beim hin- und herwechseln ständig neue Instanzen der Forms erstellt werden.

@az96: Genau das ist nämlich Dein Problem. Die Instanz, die Du aus FormB mit new FormA() erstellst, ist eben eine neue Instanz, und hat keine Ahnung davon, dass in einer anderen Instanz derselben Klasse irgendein Haken gesetzt wurde.
Dabei handelt es sich um Grundlagen, die wir hier voraussetzen.
Zitat von az96
Da ich vor ungefähr 1 Monat erst angefangen habe und mir das schritt für schritt selber beibringe
Dazu eignet sich am besten ein Buch, z.B. das im Menü links verlinkte openbook: Visual C#.
Auch hier findest Du hilfreiche Informationen: [FAQ] Wie finde ich den Einstieg in C#?

Wenn man einmal ein solches Grundlagenbuch durch hat, stellen sich solche Fragen i.d.R. nicht mehr.

Gruß, MarsStein

Thema: Wie kann ich Benutzereingaben in Konsole blockieren?
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo,

warum den Input blockieren und nicht einfach ignorieren?
Sprich, in einer bool-Variablen sich merken, dass Down gedrückt wurde, und wenn der Stein den Boden erreicht, diese wieder zurücksetzen.
Bei den anderen Pfeiltasten dann den Input nur in Abhängigkeit von der Variablen verarbeiten.

Gruß, MarsStein

Thema: Wie kann man ein ResourceDictionary testen
Am im Forum: GUI: WPF und XAML

Hallo,

hilft Dir das hier?
Can't load ResourceDictionary from within an UnitTest Project

Gruß, MarsStein

Thema: TextBox readonly machen, falls bestimmtes Item ausgewählt
Am im Forum: GUI: WPF und XAML

Hallo,

es gibt einen Unterschied zwischen IsReadOnly und IsEnabled.
Wenn letzteres auf false steht, sollte man der TextBox das auch ansehen.

Gruß, MarsStein

Thema: Das Programmier-Spiel: nette Übungsaufgaben für zwischendurch
Am im Forum: Smalltalk

Hallo pinki,

die Lösung ist korrekt - du bist dran und darfst die nächste Aufgabe stellen

Kurz zur Erklärung: Man braucht ja einen Typen der null und doch nicht null ist. Genau das liefert ein Nullable<T>. Hat dieses keinen Wert, wird es beim Boxing zu object tatsächlich null.
Alle anderen hier aufgerufenen Funktionen sind virtual, und beim Aufruf muss kein Boxing stattfinden - bis auf GetType, das nur in object implementiert und nich virtual ist. Deshalb verhält sich dieser spezielle Aufruf anders.

Gruß, MarsStein

Thema: Das Programmier-Spiel: nette Übungsaufgaben für zwischendurch
Am im Forum: Smalltalk

Hallo zusammen,

Zitat von gfoidl
Mir fällt keine neue Aufgabe ein, daher trete ich dieses Recht gerne an dich ab.

Ist ja schon etwas länger her. Hier also nochmal eine Aufgabe, was ganz kurzes.

Gegeben ist folgende Methode:

        static void DoSomething<T>(T input)
        {
            Console.WriteLine(input.ToString());
            Console.WriteLine(input.GetHashCode());
            Console.WriteLine(input.Equals(default(T)));
            try
            {
                Console.WriteLine(input.GetType());
            }
            catch(NullReferenceException)
            {
                Console.WriteLine("NullReferenceException caught");
            }
        }

Aufgabe: Die Methode soll so aufgerufen werden, dass innerhalb des catch-Blocks die Zeile "NullReferenceException caught" ausgegeben wird. Die Methode darf dabei nicht verändert werden.

Viel Spaß beim knobeln!

MarsStein

EDIT: MrSparkle hat mich freundlicherweise darauf hingewiesen, dass die Lösung sehr leicht im Internet zu finden ist - das ist hier nicht das Ziel. Denkt lieber selbst drüber nach, und nehmt euch selbst und anderen nicht den Spaß an der Sache - es ist auch wirklich nicht besonders schwierig

Thema: Live Review mit dem .NET Team
Am im Forum: Szenenews

Hallo zusammen,

also viellecht habe ich da was grundsätzlich missverstanden - aber ich kann mich mit dem Gedanken überhaupt nicht anfreunden, dass spezielle Prozessorfeatures eines speziellen Herstellers sich bis auf die Sprache C# durchdrücken.

Warum sollte man für Intel hier eine Extrawurst braten? Solche Dinge gehören meiner Ansicht nach ausschließlich in den Jitter, und sonst nirgendwohin. Und bis es soweit ist, dass es im Jitter integriert werden kann, sollte man IMO da die Finger davon lassen.

Als Sprache sollte C# jedenfalls in meinen Augen von solch proprietärem Zeugs verschont bleiben.
Naja, mal schauen was sie draus machen...

Gruß, MarsStein

Thema: Visual Studio 2008 unter XP mit Net Framework 4.0
Am im Forum: Grundlagen von C#

Hallo,

Zitat von -Dirk-
Diese Reactive Extensions für 3.5 kennst du da ein download-link?
Nein. Die direkten Download-Links auf den Microsoft-Seiten sind tot.
Scheint es nur noch bei nuget zu geben, oder Du musst selbst suchen - aber wie ich bereits schrieb, wirst Du aller Wahrscheinlichkeit nach auf weiter Probleme stoßen.
Wenn Du diesen Plan weiter verfolgst, klinke ich mich an der Stelle wieder aus.

Gruß, MarsStein

Thema: Visual Studio 2008 unter XP mit Net Framework 4.0
Am im Forum: Grundlagen von C#

Hallo,

Zitat von -Dirk-
2008 unterstützt regulär nur Net 3.5 (oben im ersten Beitrag angeblich durch Update das ich aber nicht verstehe auf Net 4.0 erweiterbar).
Da hast Du was falsch verstanden.
VS 2008 unterstützt kein .NET 4.0. Punkt.

Wenn Du die Reactive Extensions für 3.5 installierst, bekommst Du einige Features, die erst mit .NET 4 kamen, für 3.5 nachgeliefert - mit einer Erweiterung auf .NET 4 hat das recht wenig zu tun.

Da wirst früher oder später außer System.Threading.Tasks sicher noch auf einige andere Dinge stoßen, die in Deinem 2008 nicht funktionieren, wenn dein Lehrmaterial und Beispiele auf .NET 4 basieren.

Also entweder, wie LaTino schreibt, dementsprechenden mit älterem Material/Beispielen arbeiten, oder eben eine neuere VS Version benutzen (was die deutlich sinnvollere Lösung wäre). Andernfalls sind weitere Probleme schon vorgezeichnet.

Gruß, MarsStein

Thema: Auswertung und Feedback zur DevOps-Umfrage
Am im Forum: Smalltalk

Zitat von LaTino
Eigentlich ist das genau anders herum, denn der Test existiert vor der Methode.
Wenn man Test Driven entwickelt, ja. Sonst nicht.
Für mich persönlich ist TDD nun nicht gerade ein heiliger Gral. Daher würde ich dieser Aussage nicht die Richtigkeit, aber doch die Allgemeingültigkeit absprechen.

Gruß, MarsStein

Thema: ASP.NET WebForms GridView mit fixem header
Am im Forum: Web-Technologien

Hallo,

Zitat
um 18px zu gross angezeigt (daher das "-18" im Code)
Vorsicht! Schau Dir lieber genau an, wo der Grund für dieses Verhalten liegt (wahrscheinlich CSS, wie Abt schreibt, ggf. aber auch borders/paddings etc.).

Mit solchen magischen Konstanten kannst Du Glück haben - meiner Erfahrung nach gibt sowas aber meistens unterschiedliche Ergebnisse in verschiedenen Browsern...


Gruß, MarsStein

Thema: ASP.NET WebForms GridView mit fixem header
Am im Forum: Web-Technologien

Hallo,

schau mal in Fixed Table Header Atop Scrollable GridView in ASP.NET und dem dort verlinkten Artikel Scrollable GridView with Fixed Headers in ASP.Net

hth

Gruß, MarsStein

Thema: In C# einen externen File-Server ansteuern, Dokumente ausgeben und Uploaden
Am im Forum: Web-Technologien

Hallo,

um mal die letzte Frage zu beantworten, ob der gefundene Code verwendet werden kann:
Aller Wahrscheinlichkeit nach nicht - es sei denn, alle Deine Dokumente sind in ASCII - das Stück Code arbeitet mit diesem Encoding. Du müsstest aber binär arbeiten, wenn das mit verschiedenen Dokumettypen klappen soll.

data = new Byte[256];
halte ich für eine Dokumenten übertragung auch nicht gerde für eine geeignete Größe.

Aber mal im Ernst: Ihr wollt eine eigene - dann auch möglicherweise fehlerbehaftete - Lösung schreiben, um ein Problem zu lösen, das in meinen Augen gar nicht existiert, bzw. mit vorhandenen Technologien viele einfacher zu lösen ist. Wo ist der Unterschied, die Firewall für die Netzwerkfreigabe aufzumachen, oder für einen eigenen Service?

Absichern dann wie Abt schreibt über Benutzerrechte.
Vielleicht muss tDu auch gar nicht das Laufwerk mappen (falls das das Problem ist), sondern kannst über UNC-Pfad zugreifen.

Gruß, MarsStein

Thema: GridView-Header erhält falsche ID
Am im Forum: Web-Technologien

Hallo,

richtig, was Abt schreibt.
Wäre hilfreich zu wissen, wo (in welchen Handler) du die IDs setzen willst.

Zitat
statt den angegebenen IDs erhalten beide Elemente die ID "daten" (ohne zuweisung haben sie KEINE ID)
Das ist scho seltsam. Die IDs sollten immer eindeutig sein. Bekommst Du wirklich die ID "daten" mehrfach, ohne weiteren Zustaz?

Gruß, MarsStein

Thema: ASP.NET WebForms GridView mit fixem header
Am im Forum: Web-Technologien

Hallo,

Startscripte für eine Seite sollte man unter WebForms mit ClientScript.RegisterStartupScript(...) registrieren. Die werden dann erst ausgeführt wenn die Seite geladen ist (es sei den nes werden Daten über Ajax nachgeladen).

Ob man offsetWidth direkt auf dem Element setzten kann, bin ich mir nicht sicher... ich würde es eher mit elem.style.width = otherElem.offsetWidth + 'px' versuchen.

Ob das alles in Deinem Fall hilft weiss ich nicht. Deine Methode ergibt nicht wirklich Sinn. Du versuchst die Width für jede Zelle zu stezen, aber nur in der ersten Zeile ?!? Was soll der Browser Deiner Ansicht nach damit anfangen?

Gruß, MarsStein

Thema: Programm startet minimiert wenn es mittels VBA gestartet wird
Am im Forum: GUI: WPF und XAML

Hallo,

normalerweise müsstest Du Deinem Shell-Befehl noch einen Parameter dafür mitgeben können...
Schau z.B. mal hier:
Shell Function
Besonders auch was beim Parameter windowstyle steht:

Zitat
If windowstyle is omitted, the program is started minimized with focus.
Das wäre also Dein Kandidat. Warum der Firefox da anders reagiert, kann ich nicht sagen.

Gruß, MarsStein

(und ja, der Link bezieht sich auf Access... den Parameter müsstest Du in Word aber genauso oder zumindest ähnlich mitgeben können)

Thema: Freiwillige, anonyme Umfrage zum Thema DevOps
Am im Forum: Smalltalk

Hallo,

Zitat von Abt
Nene, der Link ist mit Absicht nur in diesem Forum.
Das erkläre ich dann zusammen, worum es in der Umfrage überhaupt ging
Hmm, wenn es speziell für dieses Forum ist, dann hättest Du's vielleicht gleich dazuschreiben sollen. Ich kann mir vorstellen, dass dann noch der eine oder andere mehr mitmacht /mitgemacht hätte.
(Ich hatte die Umfrage auch schon vorher ausgefüllt)

Gruß, MarsStein

Thema: WebForms, SQLDataSource, SelectParameters, ALLE(*)
Am im Forum: Web-Technologien

Hallo,

das passt schon so mit den Parametern

Wenn Du genau weisst, um was für einen konkreten Typen es sich bei dem DbCommand handelt, kannst Du es ggf. noch casten und dann die Funktionen des konkreten Typen nutzen (z.b. wenn es ein SqlCommand ist, kannst Du darauf casten und die Parameter dann mittels AddWithValue hinzufügen).

Gruß, MarsStein

Thema: ObservableCollection: Inhalt austauschen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo,

wenn Du ohnehin den kompletten Inhalt austauschst, könntest Du Dir auch überlegen, die ObservableCollection selbst auszutauschen (also eine ganz neue Collection zu erzeugen).

Gruß, MarsStein

Edit:
öhmm zu spät. Aber ich poste es trotzdem, um die Ansicht von Sir Rufo zu unterstützen.

Thema: WebForms, SQLDataSource, SelectParameters, ALLE(*)
Am im Forum: Web-Technologien

Hallo,

ich denke ich würde hier eher das SelectCommand im CodeBehind verhackstücken.
Da gäbe es dann 2 Möglichkeiten,

1.
eine Methode die den Command-Text zurückgibt und die Parameter setzt, und das dann an das SelectCommand binden also im Markup:

<asp:SqlDataSource ID="SqlDS_Artikel" runat="server"
        ConnectionString="<%$ ConnectionStrings:DB_Con %>"
        ProviderName="<%$ ConnectionStrings: DB_Con.ProviderName %>"
        SelectCommand="<%# BuildSelectCommand() %>" />
und im CodeBehind


public string BuildSelectCommand()
{
   string command = "SELECT * FROM artikelpreise"
    // hier anhand der ausgewählten DDL-Werte prüfen welche Parameter benötigt werden
    // diese der SqlDataSource hinzufügen und das
    // Command richtig zusammenbauen, dass es nur das Benötigte enthält
    if(...)
    {
        SqlDS_Artikel.Parameters.Add(...);

        command += ...;
    }
    return command;
} 

oder

2.
Das Selecting-Event der SqlDataSource abonnnieren.
In den EventArgs steckt das DbCommand, das abgesetzt werden soll, dadrin hast Du auf den CommandText und die Parameters ebenfalls Zugriff und kannst auf die gleiche Weise wie oben in der BuildSelectCommand-Methode das Command nach Deinen Wünschen abändern.

Gruß, MarsStein

Thema: MVVM (Visual Basic) - Combobox aktualisiert sich nicht?
Am im Forum: GUI: WPF und XAML

Hallo,

Zitat von Sir Rufo
Probier es einfach mal aus
Das habe ich gemacht. Allerdings glaube ich, dass ich die Frage immer noch missverstehe.

Tatsche ist, das Binding für den angezeigten Text in den Combobox-Items läuft über die Elemente der ItemsSource und den DisplayMemberName.
Das Binding für den Text, der in der (zugeklappten) Combobox angezeigt wird, kommt über das ViewModel. In diese gebundene Property geht auch der Text, den man in die Combo tippt.

Das funktioniert auch alles wie ich mir das vorgestellt habe. Ändert man die Property im MainViewModel z.B. über einen Task, wird das auch richtig angezeigt. Ändert amn den Wert in einem gebundenen Item, wird diese ebenfalls korrekt aktualisiert (wenn das Item INPC implementiert).

Zwischen beiden Werten besteht bezügl. des Bindings erst mal keine Kopplung, will man eine haben, muss man sie implemetieren.

@_Cashisclay
Ich glaube, der Knackpunkt liegt aber ganz woanders:
Wenn man Text in die Combo tippt, wird die Source aktualisiert - während dieser Aktualisierung ist aber die Gegenrichtung - View aktualisieren aus der Source - für dieses Element unterdrückt. Eine Änderung des getippten Textes ist auf die Art nicht möglich - dazu brauchst Du dann sowas wie von Sir Rufo vorgeschlagen.

Falls das noch nicht hilft:
Damit wir hier nicht alle aneinander vorbeireden, solltest Du nochmal genau beschreiben, was Du vorhast.
Aus Deinem ersten Post:
Zitat
If Not IsDBNull(DataRow.Item("Lieferschein")) Then ViewModel.Lieferschein_Text = DataRow.Item("Lieferschein")
Wann und durch welche Aktion wird dieser Code denn ausgeführt?
Wann wird Lieferschein_Text noch geändert, und durch welche Benutzeraktion?
Was stellst Du Dir als Ergebnis vor, und was passiert stattdessen?
Kannst Du das versuchen möglichst genau zu beschreiben, denn bisher ist das (zumindest für mich) immer noch etwas undurchsichtig.

Gruß, MarsStein

Thema: MVVM (Visual Basic) - Combobox aktualisiert sich nicht?
Am im Forum: GUI: WPF und XAML

Hallo,

Zitat von _Cashisclay
Im Setter hatte ich es schon versucht und eben auch noch einmal .. hatte auch nicht funktioniert.
Das kommt mir seltsam vor...
Ich muss jetzt doch mal nachfragen: Bist Du sicher, dass Dein VM auch tatsächlich INotifyPropertyChanged implementiert, oder nur das PropertyChanged-Event zur Verfügung stellt?

Gruß, MarsStein

Thema: MVVM (Visual Basic) - Combobox aktualisiert sich nicht?
Am im Forum: GUI: WPF und XAML

Hallo,

das hatte ich gar nicht gesehen, dass das im PropertyChanged passiert...
Ich denke das passiert, weil Du die selbe Property während ihres Changed-Events nochmal änderst, wird diese Änderung aus Sicherheitsgründen ignoriert (habe mir den Code von .NET diesbezügl. noch nicht angeschaut). Sonst könntest Du da z.B. leicht eine Endlosschleife aus PropertyChanged-Events bauen.

Warum wiollst Du das eigentlich im PropertyChanged überprüfen, und nicht direkt im Setter? Dann könnte sowas nicht passieren...

Gruß, MarsStein

Thema: MVVM (Visual Basic) - Combobox aktualisiert sich nicht?
Am im Forum: GUI: WPF und XAML

Hallo,

wie sieht denn das Binding aus?

Gruß, MarsStein