簡體   English   中英

C# Winforms 錨定在啟動最大化時不起作用

[英]C# Winforms anchoring doesn't work when started maximized

我有一些帶有按鈕和其他組件的窗體的窗體。 按鈕錨定在底部右側 當應用程序以最大化方式啟動時,按鈕不會像它們應該的那樣出現在窗體的角落,而是保持好像它們被錨定到TopLeft 一樣 如果我取消最大化此表單,它們將與最大化時一樣遠離右下角。 但是,如果表單正常啟動,而不是最大化,那么一切正常,按鈕在角落里。 我有其他形式的相同按鈕,一切正常,只有這個壞了。 我怎樣才能解決這個問題?

設計師:

設計師

表格開始最大化:

最大化

形式未最大化:

未最大化

現在我將 WindowState 從 Maximized 更改為 Normal:

正常未最大化

當我最大化時:

正常最大化

而這種情況只發生在這種形式,在其他形式中,這個解決方案工作正常,不管是最大化還是正常。 這種特殊形式有什么壞處?

這個表單的 Designer.cs 代碼如下(整個文件有 600 多行,所以我選擇了重要的:

            this.buttonAneks = new System.Windows.Forms.Button();
(...)

            // buttonAneks
            // 
            this.buttonAneks.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
            this.buttonAneks.BackColor = System.Drawing.SystemColors.Window;
            this.buttonAneks.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
            this.buttonAneks.Location = new System.Drawing.Point(715, 585);
            this.buttonAneks.Name = "buttonAneks";
            this.buttonAneks.Size = new System.Drawing.Size(75, 23);
            this.buttonAneks.TabIndex = 103;
            this.buttonAneks.Text = "Aneksy";
            this.buttonAneks.UseVisualStyleBackColor = false;
            this.buttonAneks.Click += new System.EventHandler(this.buttonAneks_Click);
(...)
            this.Controls.Add(this.buttonAneks);
            this.Controls.SetChildIndex(this.buttonAneks, 0);
(...)
            private System.Windows.Forms.Button buttonAneks;

事實證明,問題出在 Adob​​e PDF Reader 控件 axAcroPDF,它以這種特定形式存在,並且由於未知原因,它導致了這種行為。 刪除它解決了問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM