1

在此处输入图像描述

我正在使用继承自的 WPF 拆分按钮

xmlns:extToolkit="http://schemas.microsoft.com/winfx/2006/xaml/presentation/toolkit/extended"

问题是我想禁用,按钮'下面的那个(按钮'Conf'的右侧出现在下图中的'downarrow中),如果用户单击按钮的左侧,则右侧应该被禁用并且按钮(左侧)背景应更改为黄色。请在 xaml 下方找到,我正在使用 wpf 拆分按钮,在这种情况下为下拉内容。如果您有任何想法,请告诉我

<extToolkit:SplitButton x:Name="ABCbutton"
                        VerticalAlignment="Center"
                        Command="{Binding ACommand}"
                        FontSize="16> 
    <TextBlock HorizontalAlignment="Center"
               IsEnabled="{Binding IsEnabled, ElementName=AButton}"
               Text="A"/>
    <extToolkit:SplitButton.DropDownContent>
        <StackPanel>
            <Button Command="{Binding BCommand}"
                    Padding="3"
                    Style="{DynamicResource   
                    DropDownButtonMenuButton}">
                <TextBlock Margin="0,3,6,3" 
                           Text="B"/>
            </Button>
            <Button Command="{Binding BCommand}"
                    Padding="3"
                    Style="{DynamicResource 
                    DropDownButtonMenuButton}">
                <TextBlock Margin="0,3,6,3"
                           HorizontalAlignment="Stretch"
                           Text="C"/>
            </Button>
        </StackPanel>
    </extToolkit:SplitButton.DropDownContent>
</extToolkit:SplitButton>
4

1 回答 1

0

在这种情况下,创建自己的控件可能会更好。如果没有大量修改,拆分按钮无法真正处理您正在谈论的内容。

从本质上讲,您的新控件将包含两个按钮,它们的视觉风格使它们看起来像是融合在一起。每个都有自己的背景和启用的属性。添加一个 ViewModel 来帮助控制行为和设置属性,我想你会做生意的。请记住,任何工具包、框架、控件包等中提供的所有控件都是使用原始类型的绘图和框架元素(线、矩形、边框、内容呈现器、面板等)制作的,并具有专门的行为代码。

我最终制作了很多自定义控件,只是因为没有一个可以完美地复制我想要的东西。

于 2012-04-10T13:54:00.417 回答