11
Jak można zastosować INotifyPropertyChanged do użycia w typie F #? Dzięki!F #: Używanie INotifyPropertyChanged do wiązania danych
Jak można zastosować INotifyPropertyChanged do użycia w typie F #? Dzięki!F #: Używanie INotifyPropertyChanged do wiązania danych
Jest to w zasadzie takie same, jak w każdym innym języku:
open System.ComponentModel
type MyType() =
let ev = new Event<_,_>()
let mutable str = ""
member x.StringProp
with get() = str
and set(str') =
str <- str'
ev.Trigger(x, PropertyChangedEventArgs("StringProp"))
interface INotifyPropertyChanged with
[<CLIEvent>]
member x.PropertyChanged = ev.Publish
To nie jest „zasadniczo taki sam” jak innych językach: P –
Dzięki, Czym dokładnie jest [] atrybut zrobić? Nie mogę znaleźć żadnej dokumentacji na ten temat. –
rysama
@RodYan - wpływa na skompilowany formularz, który zajmuje wydarzenie; do współdziałania z innymi językami .NET (i do implementowania interfejsów odsłaniających zdarzenia .NET), musisz zastosować go do wartości IEvent. Powoduje to, że generowane są metody 'add_' i' remove_', w przeciwieństwie do ujawniania właściwości typu 'IEvent <_,_>', jak opisano na stronie http://msdn.microsoft.com/en-us/library/ee370437 (VS .100) .aspx. – kvb