1
I want to have two buttons which behave similar to Radio Button Functionality plus can also handle the button click or Command functionality if using MVVM.
我试图创建切换按钮模板中的控件模板。用户界面看起来与此类似,但我已经使用文本块作为堆栈面板中的控件。现在,如果我用Button替换文本块,行为将发生变化。
Below is my XAML :
<ToggleButton Grid.Column="2">
<ToggleButton.Template>
<ControlTemplate>
<Border Name="ControlBorder" CornerRadius="5" BorderThickness="0.5" BorderBrush="Black" HorizontalAlignment="Center">
<StackPanel Orientation="Horizontal">
<StackPanel Orientation="Horizontal" Name="CodeTextBlockStackPanel" HorizontalAlignment="Center">
<TextBlock Name="CodeTextBlock" Text="Code" Width="50" Margin="5,0,0,0" VerticalAlignment="Center">
</TextBlock>
</StackPanel>
<StackPanel Orientation="Horizontal" Name="ScanTextBlockStackPanel" HorizontalAlignment="Center">
<TextBlock Name="ScanTextBlock" Text="Scan" Width="50" Margin="5,0,0,0" VerticalAlignment="Center" ></TextBlock>
</StackPanel>
</StackPanel>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="ToggleButton.IsChecked" Value="True">
<Setter TargetName="CodeTextBlockStackPanel" Property="Opacity" Value="0.25"/>
<Setter TargetName="ScanTextBlockStackPanel" Property="Background" Value="Green"/>
</Trigger>
<Trigger Property="ToggleButton.IsChecked" Value="False">
<Setter TargetName="ScanTextBlockStackPanel" Property="Opacity" Value="0.25"/>
<Setter TargetName="CodeTextBlockStackPanel" Property="Background" Value="Green"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</ToggleButton.Template>
</ToggleButton>
任何变化或建议如何这可以实现将是有益的
用什么样的行为变化?为什么你会在按钮里面使用按钮?请分享更多信息。显然'Button'会处理你的'Click-Event',它不会通过它。所以有一个不同的行为。 – Peter
使用按钮不会触发我在放置按钮的堆栈面板上使用的触发器。如果我使用文本块,它工作正常。 –
我不知道你在做什么,但是你是否想在这个 模板中放置一个?因为如果你是,它将无法工作 - 两者将会发生冲突。 –
Logan