我正在尝试使用Blend 4测试版,并寻找一种方法来做一件简单的事情:
MouseLeave
发生时,图像会变回。我知道我可以在源代码中完成它,但我正在寻找一种无代码的方法来做到这一点,而无需手动编码xaml。
Blend 4看起来非常合适。但我试图使用启动故事的事件触发器或使用Visual States来设置它,但Blend似乎并没有“记住”图像源已经改变。它记得我改变了图像的其他属性(例如可见性,比例等)。但是Image源是我所追求的。
这是混合中的错误,还是我做错了什么?
答案 0 :(得分:2)
一个选项是创建自定义操作并将其附加到图像。它仍然涉及代码,但有点混合。
public class ImageSwitchAction : TriggerAction<Image>
{
public ImageSource TargetImage { get; set; }
protected override void Invoke(object o)
{
AssociatedObject.Source = TargetImage;
}
}
将类添加到项目和构建后,可以将新行为拖动到时间轴中的任何图像对象,并在操作属性中配置触发器和ImageSource。在您的情况下,为MouseEnter添加一个动作,为MouseLeave添加一个动作。
答案 1 :(得分:-2)
简单方法:
首先,订阅图像鼠标输入和鼠标离开事件然后在此事件中
使用image.setsource(new Uri(new image url))为每个事件设置图像源
如果你有麻烦,我可以在后面发布实际代码
问候 锐