private void ViewOnVisibilityChanged(IVisibleItem item, VisibilityChangeEventArgs args) { if (args.EventType == VisibilityChangeEventType.WillShow) { foreach (var view in _views.Where(v => v.Visible && v != item)) { view.Hide(); } } }
private void KeyboardOnVisibilityChanged(IVisibleItem item, VisibilityChangeEventArgs args) { switch (args.EventType) { case VisibilityChangeEventType.WillShow: SetText(string.Empty); break; case VisibilityChangeEventType.DidShow: break; case VisibilityChangeEventType.WillHide: break; case VisibilityChangeEventType.DidHide: break; default: throw new ArgumentOutOfRangeException(); } }
protected override void ViewOnVisibilityChanged(IVisibleItem item, VisibilityChangeEventArgs args) { base.ViewOnVisibilityChanged(item, args); switch (args.EventType) { case VisibilityChangeEventType.WillShow: if (_timeTimer == null || _timeTimer.Disposed) { _timeTimer = new CTimer( specific => { try { _timeRemainingLabel.SetText( new DateTime(TimeRemaining.Ticks).ToString(@"mm:ss")); } catch (Exception e) { _timeTimer.Dispose(); _timeTimer = null; } }, null, 100, 1000); } break; case VisibilityChangeEventType.DidHide: if (_timeTimer != null && !_timeTimer.Disposed) { _timeTimer.Dispose(); } _timeTimer = null; break; } }
internal void NotifyHidden(VisibilityChangeEventArgs args) { PadHidden?.Invoke(this, args); }
internal void NotifyShown(VisibilityChangeEventArgs args) { PadShown?.Invoke(this, args); }