public void InitializeOnceAtStartup(EgsDevice device) { RightHand.InitializeOnceAtStartup(device); LeftHand.InitializeOnceAtStartup(device); CursorImageSetInformationOptionalValue.SelectedItemChanged += (sender, e) => { RightHand.CurrentCursorImageSetIndex = CursorImageSetInformationOptionalValue.SelectedItem.Index; LeftHand.CurrentCursorImageSetIndex = CursorImageSetInformationOptionalValue.SelectedItem.Index; }; device.EgsGestureHidReport.RecognitionStateChanged += (sender, e) => { if (FirstFoundHand == null) { if (device.EgsGestureHidReport.Hands[(int)RightOrLeftKind.Right].IsTracking) { FirstFoundHand = _RightHand; } else if (device.EgsGestureHidReport.Hands[(int)RightOrLeftKind.Left].IsTracking) { FirstFoundHand = _LeftHand; } } else if (FirstFoundHand.IsTracking == false) { FirstFoundHand = null; } }; }