2013-05-01 25 views
1

通話功能,我有以下XAML代碼:如何從XAML

<Window.Triggers> 
    <EventTrigger RoutedEvent="MouseEnter"> 
     <EventTrigger.Actions> 
      <BeginStoryboard> 
       <Storyboard> 
        <DoubleAnimation Storyboard.TargetProperty="Opacity" To="1" Duration="0:0:0.5" Storyboard.TargetName="BackgroundBrush" From="0.5"> 
        </DoubleAnimation> 
       </Storyboard> 
      </BeginStoryboard> 
     </EventTrigger.Actions> 
    </EventTrigger> 

另外,我想調用一些功能時的MouseEnter提高

void UpdateTimeAfterMouseOver() 
    { 
     timeAfterLastMouseOver = _timeAfterLastMouseOver_init; 
    } 

怎麼辦呢?我通過命令模型對其進行映像處理,但無法映像如何:)

+1

是的,最好使用event hanlder。如果你確實想從xaml調用方法。你可以從這裏找到一個解決方案http://stackoverflow.com/questions/3041718/function-call-within-xaml-code – 2013-05-01 11:49:01

+1

我假設你正在使用MVVM。僅僅因爲你使用MVVM,你不必避免所有的代碼隱藏。在不讀取數據或寫入數據的情況下控制/操縱視圖的代碼隱藏在代碼隱藏中很好,因此您可以使用EventHandler。 – 2013-05-01 13:09:02

回答

2

我會簡單地使用MouseEnter Event

<Window MouseEnter="OnMouseEnterHandler" 

void OnMouseEnterHandler(object sender, MouseEventArgs e) 
{ 
    ... 
}