我想设计一个系统界面,我有不同的控件(矩形)一个接一个地动画(发光或发光),并将消息发送到队列,因为他们动画 - 我是C#和WPF所以不太清楚如何appoach这个 - 任何出发点?使用WPF事件触发事件
编辑:
感谢您的例子 - 虽然不能完全理解它,我想出了以下,但仍然有一些问题:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.ComponentModel;
namespace WpfApplication1
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
// public partial class MainWindow : Window
//{
// public MainWindow()
//{
// InitializeComponent();
//DataContext = this;
//}
//}
public class Glow : INotifyPropertyChanged
{
private double m_glowSize;
public event PropertyChangedEventHandler PropertyChanged;
public double GlowSize
{
get { return m_glowSize; }
set
{
m_glowSize = value;
NotifyPropertyChanged("GlowSize");
}
}
public void Window()
{
InitializeComponent();
DataContext = this;
}
private void Canvas_MouseMove(object sender, MouseEventArgs e)
{
Canvas canvas = sender as Canvas;
if (canvas != null)
{
Point mousePosition = e.GetPosition(canvas);
GlowSize = 20 * (mousePosition.X/canvas.ActualWidth);
}
}
private void NotifyPropertyChanged(string s)
{
if (PropertyChanged != null)
PropertyChanged(this, new PropertyChangedEventArgs(s));
}
}
}
问题似乎是这个块:
public void Window()
{
InitializeComponent();
DataContext = this;
}
DataContext = this;
是做什么的,我该如何正确设置它?
阅读关于触发器,数据触发器和事件触发器假设它们是开始的基础知识。另外,看看ObservableCollection和INotifyPropertyChanged这些东西在未来会有帮助。 – 2010-08-29 14:09:20