BoolExpressionConverter en - Leksiqq/WpfMarkupExtension GitHub Wiki
incomplete implementation of the IMultiValueConverter
interface, which implements the object Convert(object[] values, Type targetType, object parameter, CultureInfo culture)
method, which is passed an array of bool
values values
and a string describing the Boolean expression above them, as parameter
. Returns the result of evaluating an expression.
object Convert(object[] values, Type targetType, object parameter, CultureInfo culture)
- evaluates the expression passed in the parameter
line, in which the operands are the elements of the values
array. The expression string uses the operators !
, &
and |
. Literals of the form @n
are used as operands, where n
is the position of the corresponding element of the values
array, starting from zero. The expression must be a valid parenthesis sequence.
<Style x:Key="ButtonVisibleIfCanEdit" TargetType="ButtonBase">
<Style.Triggers>
<l:DataSwitch>
<l:DataSwitch.Binding>
<MultiBinding Converter="{StaticResource BoolExpressionConverter}"
ConverterParameter="@0 | @1">
<Binding Path="Value" Converter="{StaticResource IsNullConverter}"/>
<Binding Path="IsReadonly"/>
</MultiBinding>
</l:DataSwitch.Binding>
<DataTrigger Value="True">
<Setter Property="Visibility" Value="Collapsed"/>
</DataTrigger>
<DataTrigger Value="False">
<Setter Property="Visibility" Value="Visible"/>
</DataTrigger>
</l:DataSwitch>
</Style.Triggers>
</Style>
Before: (DataSwitch) Start:(Overview) Next:(ConverterProxy)