Не удается отобразить эффект ряби при нажатии на элемент - PullRequest
0 голосов
/ 30 мая 2018

Я пытаюсь показать свой Ripple Effect, когда по элементу управления нажимают, но он не работает.Я думаю, что это был какой-то бесконечный цикл, но я не могу найти ошибки.Вот мой код в OnMouseClick:

    protected override void OnMouseClick(MouseEventArgs e)
    {
        base.OnMouseClick(e);
        xx = MousePosition.X;
        yy = MousePosition.Y;
        allow = true;
        while (allow)
        {
            Invalidate();
        }
    }

, и это мой код в OnPaint:

    protected override void OnPaint(PaintEventArgs e)
    {
        base.OnPaint(e);
        var G = e.Graphics;
        G.DrawString(Text, Font, new SolidBrush(ForeColor), R, SF);
        if (SizeAnimation > 190) allow = false;
        if (allow)
        {
            SizeAnimation = SizeAnimation + 25;
            G.FillEllipse(new SolidBrush(Color.FromArgb(198, 180, 232)), xx, yy, SizeAnimation, SizeAnimation);
            G.DrawString(Text, Font, new SolidBrush(ForeColor), R, SF);
        }
    }

Размер элемента управления составляет 145 и 45. Может ли кто-нибудь объяснить мне ошибки ипочини это?Большое спасибо: D

...