使用MultiBinding的原则:数据源有一个以上;
1. 需求:在一个需要显示的内容中,不同的部分要进行的处理不一样,这时可以使用MultiBinding
1 <TextBlock> 2 <TextBlock.Text> 3 <MultiBinding StringFormat="{}{0} {1} {2}"> 4 <Binding Path="DownloadViewModel.TotalDeviceCount" /> 5 <Binding Path="Language" Converter="{StaticResource LanConverter}" ConverterParameter="Problem"/> 6 <Binding Path="DownloadViewModel.TotalDeviceCount" Converter="{StaticResource NumToPluralConverter}" ConverterParameter="Driver" /> 7 </MultiBinding> 8 </TextBlock.Text> 9 </TextBlock>
直接使用MultiBinding的StringFormat来处理
2.需求:数据源都不一样,但是需要同时使用这些数据源来进行判断或处理
1 <Button.CommandParameter> 2 <MultiBinding Converter="{StaticResource WindowMulitConverter}"> 3 <Binding RelativeSource="{RelativeSource AncestorType=Window,AncestorLevel=1}"/> 4 <Binding/> 5 </MultiBinding> 6 </Button.CommandParameter>