Silverlight 4.0 自定义切换按钮和状态-如何使鼠标悬停和选中都具有相同的效果?

Silverlight 4.0 自定义切换按钮和状态-如何使鼠标悬停和选中都具有相同的效果?,silverlight-4.0,expression-blend,Silverlight 4.0,Expression Blend,我或多或少地使用了以下过程,根据图像制作了一个自定义按钮: 我添加了一个鼠标悬停状态,可以将图像放大1.5倍,因此当您将鼠标悬停在图像上时,图像会稍微变大,然后当您移开鼠标时,图像会缩小到正常大小。一切都很好,这正是我想要的 现在我想做一个切换按钮,它做的事情完全一样,但是当按下切换按钮时,图像大小应该保持在1.5倍,以表明它已被选中。我尝试将相同的放大效果添加到选中状态,并收到一条关于在多个状态组中更改对象属性的警告 这是有意义的…如果您按下切换按钮,状态将设置为CheckIn CheckS

我或多或少地使用了以下过程,根据图像制作了一个自定义按钮:

我添加了一个鼠标悬停状态,可以将图像放大1.5倍,因此当您将鼠标悬停在图像上时,图像会稍微变大,然后当您移开鼠标时,图像会缩小到正常大小。一切都很好,这正是我想要的

现在我想做一个切换按钮,它做的事情完全一样,但是当按下切换按钮时,图像大小应该保持在1.5倍,以表明它已被选中。我尝试将相同的放大效果添加到选中状态,并收到一条关于在多个状态组中更改对象属性的警告

这是有意义的…如果您按下切换按钮,状态将设置为CheckIn CheckState,但当您移开鼠标时,它会将图像缩放回CommonState中的正常状态。因此,图像不能保持在1.5倍

那么,我究竟如何才能使这项工作?如果选中按钮,有没有办法“杀死”鼠标离开时的状态?

理论上,这两种效果(悬停和选中状态)仍然应该是分开的。如果“选中时放大”处于活动状态,您仍然希望控件在悬停时放大更多,因此效果将是相加的

要避免发生冲突,需要将情节提要更改应用于控件中的两个不同元素。只要确保两者对控件具有相同的总体影响。这可能意味着在现有元素上方引入额外元素(例如,复选框网格上方的网格)


希望这能有所帮助。

谢谢,根据您的建议,我将图像放在画布中,然后选中画布展开,并在鼠标上方展开图像。现在,选中切换按钮时,图像保持较大;唯一的问题是,如果你将鼠标移到已经选中的按钮上,图像会展开两次,但我可以接受。