这是我使用 FsXaml 所做的事情
type MainViewModel() as self =
inherit ViewModelBase()
let listOfData = self.Factory.Backing(<@self.ListOfData@>, 0 :> obj)
let selectedId = self.Factory.Backing(<@self.SelectedId@>, 0)
member x.SelectedId with get() = selectedId.Value
and set value = selectedId.Value <- value;
x.ListOfData <- returnPrice(value) :> obj
member x.StockList with get() = stockList
member x.ListOfData with get() = listOfData.Value and set value = listOfData.Value <- value
在 xaml 中
<ComboBox Grid.Row="1" ItemsSource="{Binding StockList}"
DisplayMemberPath="Code"
SelectedValuePath="Id" SelectedValue="{Binding SelectedId}"/>
<DataGrid Grid.Row="2" ItemsSource="{Binding ListOfData}"/>
如何使用ViewModule
的命令依赖性来设置x.ListOfData
而不是在的setter中调用
?returnPrice(value)
x.SelectedId
最佳答案
你猜对了@Foggy Finder。我已将代码替换为 -
let selectedId = self.Factory.Backing(<@self.SelectedId@>, 0)
do
self.DependencyTracker.AddPropertyDependency(<@self.ListOfData@>,<@self.SelectedId@>)
member x.SelectedId with get() = selectedId.Value and set value = selectedId.Value <- value;
member x.StockList with get() = stockList
member x.ListOfData with get() = returnPrice(self.SelectedId)
它有效!
self.DependencyTracker.AddCommandDependency() 的用途是什么以及如何使用它?
关于wpf - 如何使用 FsXaml 的 CommandDependecy/(ies),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40750777/