У меня есть конвертер значений в ToggleButton следующим образом:
<ToggleButton Width="200" Height="30" HorizontalAlignment="Center" >
<ToggleButton.Style>
<Style TargetType="{x:Type ToggleButton}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ToggleButton}">
<Grid x:Name="Chrome" Background="{TemplateBinding Background}" SnapsToDevicePixels="true">
<ContentPresenter Margin="{TemplateBinding Padding}" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" RecognizesAccessKey="True" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
<TextBlock Name="txtBlock"/>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsChecked" Value="True">
<Setter Property="Content" >
<Setter.Value>
<MultiBinding Converter="{StaticResource DeleteRow}"/>
</Setter.Value>
</Setter>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ToggleButton.Style>
</ToggleButton>
Конвертер значений в настоящее время пуст, просто отображается следующее сообщение:
Imports System.Data
Imports System.Globalization
Public Class DeleteRow
Implements IMultiValueConverter
Public Function Convert(values() As Object, targetType As Type, parameter As Object, culture As CultureInfo) As Object Implements IMultiValueConverter.Convert
MsgBox("Hello")
End Function
Public Function ConvertBack(value As Object, targetTypes() As Type, parameter As Object, culture As CultureInfo) As Object() Implements IMultiValueConverter.ConvertBack
Throw New NotImplementedException()
End Function
End Class
Проблема в том, что когдаНажмите кнопку при первом запуске преобразователя.Нажатие на кнопку второй раз, очевидно, устанавливает IsChecked на False.Но я ожидаю, что когда я нажму на него в третий раз, когда его состояние IsChecked будет ложным, оно должно сработать, но это не так.
Есть идеи?