锁定宽高比会导致窗口闪烁

时间:2013-01-02 12:14:48

标签: c# winforms resize aspect-ratio window-resize

我正在开发一个应用程序,它要求我强制主窗口具有锁定的宽高比。我找到了这个代码段here。它有效,但窗口在重新调整大小时会闪烁。

float _currentRatio;
bool _lockRatio=false;

public bool LockRatio
{
    get{ return _lockRatio; }
    set{ _lockRatio=value; }
}

protected override void OnSizeChanged(EventArgs e)
{
    if(!_lockRatio)
        this._currentRatio=(float)this.Height/(float)this.Width;
    else
        this.Height=(int)(this.Width*this._currentRatio);

    base.OnSizeChanged (e);
}

有没有办法避免闪烁?

0 个答案:

没有答案