2010-07-22 121 views
1

我通过后面的代码在画布上创建一些边框对象。我没有这些边界的任何XAML。默认情况下它们的不透明度设置为0.5,我想在鼠标输入时将其不透明度更改为1。这是我必须尝试为他们制作鼠标输入事件的代码。但它不起作用。我认为我必须将发件人对象作为边界进行投射,这是否正确?silverlight鼠标事件

br.MouseEnter += new MouseEventHandler(br_MouseEnter); 

    void br_MouseEnter(object sender, MouseEventArgs e) 
    { 
     sender.Opacity = 1.0; 

    } 

回答

2

你要做到这一点: -

void br_MouseEnter(object sender, MouseEventArgs e) 
{ 
    ((UIElement)sender).Opacity = 1.0; 
} 

void br_MouseLeave(object sender, MouseEventArgs e) 
{ 
    ((UIElement)sender).Opacity = 0.5; 
} 

你可以连接这些事件处理多个国界。

尽管您可能还会考虑创建模板化控件并使用VisualStateManager

0

你为什么不呢?

br.Opacity = 1.0;