Я пытаюсь уменьшить это:
<CheckBox Content="K1" Grid.Row="0" Grid.Column="0">
<CheckBox.IsChecked>
<local2:BcpBinding Path="RelayOutputMask" Converter="{StaticResource ByteBit2Bool}" ConverterParameters="0,Binding Path=RelayOutputMask" Mode="TwoWay" />
</CheckBox.IsChecked>
</CheckBox>
<CheckBox Content="K2" Grid.Row="0" Grid.Column="1">
<CheckBox.IsChecked >
<local2:BcpBinding Path="RelayOutputMask" Converter="{StaticResource ByteBit2Bool}" ConverterParameters="1,Binding Path=RelayOutputMask" Mode="TwoWay" />
</CheckBox.IsChecked>
</CheckBox>
<CheckBox Content="K3" Grid.Row="0" Grid.Column="2">
<CheckBox.IsChecked >
<local2:BcpBinding Path="RelayOutputMask" Converter="{StaticResource ByteBit2Bool}" ConverterParameters="2,Binding Path=RelayOutputMask" Mode="TwoWay" />
</CheckBox.IsChecked>
</CheckBox>
<CheckBox Content="K4" Grid.Row="0" Grid.Column="3">
<CheckBox.IsChecked >
<local2:BcpBinding Path="RelayOutputMask" Converter="{StaticResource ByteBit2Bool}" ConverterParameters="3,Binding Path=RelayOutputMask" Mode="TwoWay" />
</CheckBox.IsChecked>
</CheckBox>
<CheckBox Content="K5" Grid.Row="0" Grid.Column="4">
<CheckBox.IsChecked >
<local2:BcpBinding Path="RelayOutputMask" Converter="{StaticResource ByteBit2Bool}" ConverterParameters="4,Binding Path=RelayOutputMask" Mode="TwoWay" />
</CheckBox.IsChecked>
</CheckBox>
<CheckBox Content="K6" Grid.Row="0" Grid.Column="5">
<CheckBox.IsChecked >
<local2:BcpBinding Path="RelayOutputMask" Converter="{StaticResource ByteBit2Bool}" ConverterParameters="5,Binding Path=RelayOutputMask" Mode="TwoWay" />
</CheckBox.IsChecked>
</CheckBox>
<CheckBox Content="K7" Grid.Row="0" Grid.Column="6">
<CheckBox.IsChecked >
<local2:BcpBinding Path="RelayOutputMask" Converter="{StaticResource ByteBit2Bool}" ConverterParameters="6,Binding Path=RelayOutputMask" Mode="TwoWay" />
</CheckBox.IsChecked>
</CheckBox>
<CheckBox Content="K8" Grid.Row="0" Grid.Column="7">
<CheckBox.IsChecked >
<local2:BcpBinding Path="RelayOutputMask" Converter="{StaticResource ByteBit2Bool}" ConverterParameters="7,Binding Path=RelayOutputMask" Mode="TwoWay" />
</CheckBox.IsChecked>
</CheckBox>
Я попытался создать стиль и задать свойства «Путь», «Конвертер» и «Режим», но Visual Studio сообщает, что это не DependencyProperties
.
Есть идеи?
Редактировать:
Я понимаю, что могу удалить Grid.Row="0"
.
Я использую конвертер ByteBit2Bool из этого проекта:
https://www.codeproject.com/Articles/475550/A-bit-of-binding-MVVMing-bytes-bits-based-data