【问题标题】:How to make the size of a Form go back to the original size after an event is trigged?触发事件后如何让Form的大小恢复到原来的大小?
【发布时间】:2020-10-04 02:06:46
【问题描述】:
  1. 我尝试使用this.Heightthis.Width 更改值,但单击按钮后它不起作用。知道为什么它不起作用吗?

  2. Form 中的 PictureBox 使用相同的策略。

private void clear_ClickButton(object sender, EventArgs e)
{
    pictureBox5.Image = null;
    pictureBox5.Height = 500;
    pictureBox5.Width = 672;
    this.Width = 890;
    this.Height = 662;
    this.MaximizeBox = false;
    pictureBox7.Enabled = false;
}

【问题讨论】:

  • 如果表单已最大化(我假设您正试图将其设置回正常状态。这:this.MaximizeBox = false; 隐藏按钮),然后只需 this.WindowState = FormWindowState.Normal;。顺便说一句,不要这样做:pictureBox5.Image = null; 删除图像,而是将其丢弃:pictureBox5.Image?.Dispose();。除非该属性引用了您想稍后再次使用的现有位图对象。
  • 您是否将原始尺寸存储在某处?
  • @Jimi,感谢您的启发,pictureBox5.Image?.Dispose() 是一个非常好的解决方案。至于this.WindowState = FormWindowState.Normal; 没有用,this.Size = new Size(890; 662); 也没有。 @TaW,我确实将 MinimumSize 设置为(890;662),但是当我重置它时也没有工作。我认为这可能与“属性”窗口中设置的任何属性有关。 (cdn.discordapp.com/attachments/732768066261483522/…) (cdn.discordapp.com/attachments/732768066261483522/…)

标签: c# winforms


【解决方案1】:

首先,我假设您说的是 WinForm。

Form1.Size = new System.Drawing.Size(890, 662);

更多信息How to: Resize Windows FormsChange form size at runtime in C#

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-07
    • 1970-01-01
    • 2016-06-09
    • 1970-01-01
    • 2017-11-04
    • 1970-01-01
    相关资源
    最近更新 更多