我想獲得一個函數被調用每次發生一個事件。在KinectRegion類中有一個名爲HandPointerGrip的事件:http://msdn.microsoft.com/en-us/library/microsoft.kinect.toolkit.controls.kinectregion.handpointergrip.aspx。使用事件從一個類
我看到它已經聲明瞭事件,在我看來事件已經被設置爲被調用(HandPointerEventArgs)?我如何將一個函數附加到這個事件?
public Menu()
{
KinectRegion.HandPointerGripEvent+=Hand_Gripped; // why doesn't this work? :(
}
private void Hand_Gripped(object sender, HandPointerEvnetArgs e)
{
MessageBox.Show("I work!"); // I wish this would work
}
一直在這個問題上努力工作,這裏是我想將工作。害怕測試它。瞭解很多關於路由事件,代表和事件。
namespace ...
{
public delegate void HandPointerEventHandler(object sender, HandPointerEventArgs e);
public partial class thePage : Page
{
public event HandPointerEventHandler HandGripped
{
add {this.AddHandler(KinectRegion.HandPointerGripEvent,value);}
remove {this.RemoveHandler(KinectRegion.HandPointerGripEvent,vlaue);}
}
public thePage()
{
InitializeComponent();
this.HandGripped += new HandPointerEventHandler(OnHandGripped);
}
protected virtual void OnHandGripped(object sender, HandPointerEventArgs e)
{
MessageBox.Show("hello"); //hopefully
}
}
}
我得到一個靜態只讀字段不能分配給第一個代碼塊,並且+ =運算符不能應用於System.Windows.RoutedEvent和metod組。我只是使用了像KinectRegion.AddHandPointerMoveHanlder()這樣的AddHandPointer;現在我堅持如何爲鼠標創建觸發器語句。例如,當按下手時,我希望鼠標點擊它的當前點(就像有物理點擊一樣)。 –
agorapax