我遇到了一个自定义WPF按钮的问题 - 每当我点击它时,它都会收到一个点击事件,但似乎没有被切换(当我点击另一个按钮时不会停下来)。我尝试过所有我能想到的,但仍然无法实现的工作。WPF togglebutton
虽然我注意到了一件奇怪的事情,但是当我在MouseDown处理程序中放置一个断点并在此点击F5继续时,该按钮会切换并保持关闭状态。这使我相信这是某种焦点问题?
<ToggleButton Name="ToggleButton" PreviewMouseDown="ToggleButton_MouseDown_1" IsThreeState="False">
<StackPanel Orientation="Vertical">
<Label Content="Single" FontSize="15" FontWeight="Medium"/>
<Label Content="Speaker"/>
</StackPanel>
</ToggleButton>
private void ToggleButton_MouseDown_1(object sender, MouseButtonEventArgs e)
{
ToggleButton.IsChecked = !ToggleButton.IsChecked;
}
private void ToggleButton_MouseDown_1(object sender, MouseButtonEventArgs e)
{
ToggleButton.IsChecked = !ToggleButton.IsChecked;
}
帮助? :)
ToggleButton控件是否处理IsChecked属性已更改?我之前没有用过它,我只是猜测你的事件正在扭转行为。 –
这确实解决了这个问题。然而,这并不适用于我的情况 - 请参阅 - 我在自己的控件中使用这些按钮(每次2或3个按钮),如果您选中1按钮,则会将其余按钮切换到未选中状态。有没有办法让事件处理程序,仍然得到它的工作?问题背后的实际原因是什么? (我是新来的WPF).. 谢谢! :) – Ross