按钮设计问题

时间:2014-02-11 12:05:56

标签: wpf xaml animation button wpf-animation

在我的申请表上,我有一个侧栏,看起来像这样:

enter image description here

Admin位只是标题

现在我将这些编码为Buttons。它们对点击或其他任何东西都没有任何影响。我想将这些更改为TabItems,以便它具有出现在旁边的效果。

我尝试过这样做但是当我向width添加TabItem时,效果会变为Button

enter image description here

正如您所看到TabItem只是Button,效果已经消失。

你们有什么建议可以通过Animation或我如何解决TabItem问题来改善我的看法吗?

修改

我已将TabItems更改为Buttons,但我遇到了一个大问题。我在左侧有10个不同的按钮,当我点击一个时,会出现动画,结果如下:

enter image description here

但是正如你从图片中看到的那样,当我点击下面的另一个按钮时,会发生相同的动画,但点击的上一个按钮不会恢复正常状态。

当我点击另一个按钮时,如何重置上一个点击按钮上的故事板动画。

1 个答案:

答案 0 :(得分:2)

在我看来,在这种情况下使用一叠按钮是更可取的。在这里使用TabControl似乎没有必要,会让事情变得复杂。请查看此MSDN article以获取有关执行所需操作的精彩教程。

我希望这会有所帮助。


编辑。解决有关形状的问题......

如果要继承Button的默认系统颜色/样式,可以在按钮模板中使用TemplateBindings。例如,如果要创建一个与系统背景颜色相同的自定义形状按钮

<Button>
    <Button.Template>
        <ControlTemplate TargetType="Button">
            <Grid>
                <!-- circle to have inherited colour -->
                <Ellipse Fill="{TemplateBinding Background}" Height="50" Width="50" />
                <ContentPresenter />
            </Grid>
        </ControlTemplate>
    </Button.Template>
</Button>

然后Ellipse将继承Button的背景颜色,但它会被设置。在动画中这样做会更复杂,但根本不可能......