如何为多绑定转换器编写内联xaml?

ecfdbz9o  于 2023-02-14  发布在  其他
关注(0)|答案(1)|浏览(87)

我如何包括第二个装订?括号和逗号在哪里?
有5000个例子展示了如何在xml中做这件事,但没有一个关于这件事应该如何内联出现。
不是这个

<TextBlock>
    <TextBlock.Text>
        <MultiBinding StringFormat="{}{0:F1}{1:F1}">
            <Binding Path="A" />
            <Binding Path="B" />
        </MultiBinding>
    </TextBlock.Text>
</TextBlock>

这个

<StackPanel Grid.Column="0"
            Orientation="Vertical"
            HorizontalAlignment="Left"
            Visibility="{MultiBinding Converter={StaticResource multi_bool_vis_conv},                                                                                        
            Bindings={Binding LabelFormat.HasLotMaskShiftCode}}">

我需要传递第二个绑定 LabelFormat.HasSomeOtherCode。如何包含第二个绑定?

d8tt03nd

d8tt03nd1#

假设multi_bool_vis_conv实现了接口IMultiValueConverter,并且您通过索引值数组来处理不同的参数,则绑定应如下所示:

<MultiBinding Converter="{StaticResource YourConverter}">
    <Binding Path="YourProperty1"/>
    <Binding Path="YourProperty2"/>
</MultiBinding>

我假设您希望在一行(“in-line”)上执行此操作,因为您希望设置StackPanel的Visibility属性的绑定,并且不确定如何以多行方式执行此操作...
您可以像这样拆分它:

<StackPanel>
    <StackPanel.Visibility>                            
        <MultiBinding Converter="{StaticResource YourConverter}">
            <Binding Path="YourProperty1" />
            <Binding Path="YourProperty2" />
        </MultiBinding>                            
    </StackPanel.Visibility>
</StackPanel>

相关问题