DialogResult в F #
Пытаясь извлечь DialogResult из окна в приложении MVVM, я наткнулся наэтот предыдущий вопрос, После внесения предложенных изменений образец выглядит следующим образом:
type DialogCloser() =
static let DialogResultProperty =
DependencyProperty.RegisterAttached("DialogResult", typeof<bool>, typeof<DialogCloser>, new PropertyMetadata(DialogResultChanged))
static member GetDialogResult (a:DependencyObject) =
a.GetValue(DialogResultProperty) :?> bool
static member SetDialogResult (a:DependencyObject) (value:string) =
a.SetValue(DialogResultProperty, value)
member this.DialogResultChanged (a:DependencyObject) (e:DependencyPropertyChangedEventArgs) =
let window = a :?> Window
match window with
| null -> failwith "Not a Window"
| _ -> window.DialogResult <- System.Nullable (e.NewValue :?> bool)
СейчасDialogResultChanged
используется перед объявлением, что, конечно, не вычисляется в F #.
Я не могу найти рабочее решение, любая помощь будет оценена.