我不知道是否有可能在使用wpf數據綁定時級聯轉換器。 例如像WPF數據綁定和級聯轉換器?
<SomeControl Visibility="{Binding Path=SomeProperty, Converter={StaticResource firstConverter}, Converter={StaticResource secondConverter}}"/>
是否有可能在所有或我必須創建一個自定義轉換器,結合轉換器A和B的功能?
我不知道是否有可能在使用wpf數據綁定時級聯轉換器。 例如像WPF數據綁定和級聯轉換器?
<SomeControl Visibility="{Binding Path=SomeProperty, Converter={StaticResource firstConverter}, Converter={StaticResource secondConverter}}"/>
是否有可能在所有或我必須創建一個自定義轉換器,結合轉換器A和B的功能?
您可以嘗試使用MultiBinding,並將兩次綁定到相同的源,但在單個綁定上具有不同的轉換。喜歡的東西:
<SomeControl>
<SomeControl.Visibility>
<MultiBinding Converter="{StaticResource combiningConverter}">
<Binding Path="SomeProperty" Converter="{StaticResource firstConverter}"/>
<Binding Path="SomeProperty" Converter="{StaticResource secondConverter}"/>
</MultiBinding>
</SomeControl.Visibility>
</SomeControl>
然後在「combiningConverter」你把從兩個綁定來的值相結合的邏輯。
您可能正在尋找類似於Josh Smith的「Piping Value Converters」的解決方案。
在他的文章,他提出以下幾點:
<local:ValueConverterGroup x:Key="statusDisplayNameGroup">
<local:IntegerStringToProcessingStateConverter />
<local:EnumToDisplayNameConverter />
</local:ValueConverterGroup>
,然後使用多值轉換如下:
<TextBlock Text="{Binding [email protected],
Converter={StaticResource statusDisplayNameGroup}}" />
希望這有助於!