コード例 #1
0
 private void timer_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
 {
     this.InvokeEx(() =>
     {
         ++this.time;
         if (this.time >= this.WaitForHiddenTime.TotalSeconds && !this.IsKeepShow)
         {
             if (this.Content is FrameworkElement)
             {
                 FrameworkElement element = this.Content as FrameworkElement;
                 Point point          = Mouse.GetPosition(element);
                 HitTestResult result = VisualTreeHelper.HitTest(element, point);
                 if (result == null || result.VisualHit == null)
                 {
                     element.BeginHideWithOpacityAndVisibility(this.ShowOrHideDuration, null);
                 }
                 else
                 {
                     return;
                 }
             }
             this.timer.Stop();
             this.isStop = true;
         }
     });
 }