-->

WPF Multibinding查看型号(WPF Multibinding to View Mode

2019-10-19 18:14发布

我想多路捆绑格式化双重价值的文本框中。 我有一个转换器,它发生在一张双人床和一个格式化对象,并返回要显示的格式化字符串。 双重绑定到特定的数据源和格式化是在视图模型的特性。 我遇到的问题是,我无法绑定到视图模型属性。 这是我在XAML代码

    <StackPanel Grid.Row="0" Grid.Column="1">
      <TextBlock HorizontalAlignment="Left" Style="{StaticResource HintDataItemsStyle}">
        <TextBlock.Text>
         <MultiBinding Converter="{StaticResource FormatConverter}">
           <Binding Path="OpenValue" />
           <Binding Path="XLabelFormatterY1" />
         </MultiBinding>
        </TextBlock.Text>
      </TextBlock> 

这是在视图模型的财产

    private ILabelFormatter _labelFormatterY1;
    public ILabelFormatter XLabelFormatterY1
    {
        get { return _labelFormatterY1; }
        set
        {
            _labelFormatterY1 = value;
            OnPropertyChanged("XLabelFormatterY1");
        }
    }

所以,在我转换我能够拿起值“OpenValue”,但运行时无法找到XLabelFormatterY1。 大多数例子我已经看到了multibinding结合GUI组件。 我试图绑定到视图模型,并感谢所有帮助。

Answer 1:

老问题,但没有答案。 我beleive你正在寻找这种解决方案 。 如果这个答案并不为你工作,尝试明确设置NotifyOnSourceUpdated="True"的结合。 而且还仔细检查,如果你已经设置正确AncestorType为wookietomwookie说,在他的回答。



文章来源: WPF Multibinding to View Model