首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在FSharp.ViewModule中将命令/属性绑定到PropertyChanged

如何在FSharp.ViewModule中将命令/属性绑定到PropertyChanged
EN

Stack Overflow用户
提问于 2016-05-31 18:05:30
回答 1查看 214关注 0票数 2

FSarp.ViewModule中,我有一个简单的视图,点击按钮会根据右边的文本框在左边的文本框中生成一个随机数。我如何绑定右侧文本框中的更改(例如手动输入数字),以便在不单击按钮的情况下调用clickcommand或click()方法来更新左侧文本框?我尝试了self.DependencyTrackerself.RaisePropertyChanged的不同组合,但无法获得正确的语法。

这是视图:

XAML:

代码语言:javascript
复制
<Button x:Name="button" Content="Button" HorizontalAlignment="Left" Height="55" Margin="130,55,0,0" VerticalAlignment="Top" Width="115" Command="{Binding Click}"/>
<TextBox x:Name="textBox1" HorizontalAlignment="Left" Height="50" Margin="30,55,0,0" TextWrapping="Wrap" Text="{Binding Data, UpdateSourceTrigger=PropertyChanged}" VerticalAlignment="Top" Width="70"/>
<TextBox x:Name="textBox2" HorizontalAlignment="Left" Height="50" Margin="280,55,0,0" TextWrapping="Wrap" Text="{Binding Data2, UpdateSourceTrigger=PropertyChanged}"  VerticalAlignment="Top" Width="70"/>

和ViewModel:

代码语言:javascript
复制
type RandomX = {
    DataOut: int
    DataIn: int
    }

type MainRandomModel(model:RandomX) as self = 
    inherit ViewModelBase()
    let rnd = System.Random()

    let defaultNums = model //{DataOut = 100; DataIn = 100}

    let data = self.Factory.Backing(<@ self.Data @>, defaultNums.DataOut )
    let data2 = self.Factory.Backing(<@ self.Data2 @>, defaultNums.DataIn)
    let click() = data.Value <- rnd.Next(data2.Value) 
    let clickcommand = self.Factory.CommandSync(click)
    member self.Click = clickcommand
    member self.Data with get() = data.Value and set v = data.Value <- v
    member self.Data2 with get() = data2.Value  and set v = data2.Value <-v

    new() = MainRandomModel({DataOut=20;DataIn=10})
EN

回答 1

Stack Overflow用户

发布于 2016-06-01 00:07:32

您只需要在Data2的设置器中调用click函数:

代码语言:javascript
复制
member self.Data2 with get() = data2.Value 
                  and set v = data2.Value <- v ; click()
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37542681

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档