private void Window_KeyDown(object sender, KeyEventArgs e) { if (e.Key == Key.Escape) { var fechar = MessageBox.Show("Deseja fechar a apresentação?", "Aviso", MessageBoxButton.YesNo); if (fechar == MessageBoxResult.Yes) { App.Current.Shutdown(); } } if (e.Key == Key.Back) { WindowState = WindowState.Minimized; } if (e.Key == Key.Left) { if (s > 0) { s -= 1; SlideFrame.TrocaSlide(s); } } if (e.Key == Key.Right) { if (s < 8) { s += 1; SlideFrame.TrocaSlide(s); } } }
protected override void OnElementChanged(ElementChangedEventArgs <Frame> e) { base.OnElementChanged(e); if (e.NewElement != null && e.OldElement == null) { _targetType = e.NewElement as SlideFrame; // обратиться к раудиусу // присвоить к _cornerRadius // присвоить к Element.CornerRadius = _cornerRadius UpdateBackground(); } }
public CustomFrameDrawable(SlideFrame frame, Func <double, float> convertToPixels) { // _frame - основной объект, с которым производится логика прорисовки, т.к. он ссылается на свойство Element рендерера _frame = frame; _radius = _frame.Radius; _frameThickness = _frame.FrameThickness; _contentBounds = _frame.ContentBounds; _boundsDiff = _frame.FrameDifference; _convertToPixels = convertToPixels; // Когда в рендере срабатывает метод OnElementPropertyChanged(object sender, PropertyChangedEventArgs e) или OnElementChanged(ElementChangedEventArgs<Frame> e), // тогда вызывается event PropertyChanged. // Присвоим для него отрисовку (FrameOnPropertyChanged). frame.PropertyChanged += FrameOnPropertyChanged; }
private void Main_ContentRendered(object sender, EventArgs e) { slide.Navigate(new Slide1()); SlideFrame.getSlide(this); }