Wie kann ich mit SendMessage einer View, welche mit ShowDialog geöffnet wurde, ein DialogResult = null senden (damit ich sie im Programm gezielt mit einem ResultCode schliessen kann - WM_CLOSE liefert DialogResult = Cancel) ?
DialogResult ist ein not-nullable Enum.
Und Cancel hat wohl die Value 0 und ist damit der Standardwert.
Korrektur: None ist der Standardwert. WM_CLOSE ist mit Abbrechen verbunden und setzt daher Cancel.
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
Wie in der MSDN steht ist None nur gesetzt, wenn das Dialogfenster noch offen ist. Ob eine Manipulation hier direkt so möglich ist bezweifel ich ein wenig.
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
Du kannst dieses Ergebnis wahrscheinlich gar nicht schicken. Das Fenster zumachen geht per Message. Was es als Ergebnis zurckgibt hast du direkt nicht in der Hand (glaube ich).
Du könntest aber vielleicht den entsprechenden Button ausfindig machen und den "drücken".
Der Hintergrund ist folgender: ich öffne in einer WPF-Anwendung eine View mit ShowDialog, welche nur einen OK-Button hat. Dieser sollte beim Öffnen der View disabled sein, und erst bei im weiteren Verlauf auf enabled geschalten werden (die View bleibt aber immer offen) - ich habe hier schon mit Dependency-Properties gespielt... daher war meine Idee, die View zuerst mit inaktiven OK-Button zu öffnen, dann programmatisch (SendMessage, WM_CLOSE) zu schliessen und wieder mit aktvien OK-Button zu öffnen ...