Вот само событие PaintSurface
public void OnPainting(object sender, SKPaintSurfaceEventArgs e)
{
SKSurface surface = e.Surface;
SKCanvas canvas = surface.Canvas;
canvas.Clear(SKColors.White);
}
Я хочу использовать canvas в другом методе,вызываемом при нажатии кнопки. К примеру использовать canvas.Clear(SKColors.White); в методе
private void ClearButton_Clicked(object sender, EventArgs e)
{
canvas.Clear(SKColors.White);
}
Я так понимаю,нужно что бы метод тоже получал SKPaintSurfaceEventArgs, но как это реализовать? Где можно почитать об этом или найти подобный пример?
Объявить SKCanvas canvas глобально для этих методов
Вызовите метод InvalidateSurface. Это в свою очередь вызовет событие PaintSurface.
private void ClearButton_Clicked(object sender, EventArgs e)
{
InvalidateSurface();
}
При этом дополнительные данные можно передавать через поля:
private SKColor _color;
private void ClearButton_Clicked(object sender, EventArgs e)
{
_color = SKColors.Blue;
InvalidateSurface();
}
И это поле использовать
public void OnPainting(object sender, SKPaintSurfaceEventArgs e)
{
e.Surface.Canvas.Clear(_color);
}
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости