2017-05-03 10 views
0

固定サイズの開始ダイアログを持つC#winformsアプリケーションがあります。このフォームにまったく関係のない変更を加えた後、フォームは最大化され、画面全体を左上隅の通常サイズのままで埋めます。タイトルバーをマウスで少し下にドラッグすると、適切なサイズに復元されます。アプリケーションが最大化されないときに開く

フォームは

MaximizeBox = False 
StartPosition = CenterScreen 
FormBorderStyle = Fixed3D 

を持っている人は、それが最大化開かせる、そしてどのようにそれを停止するかもしれないものの任意の提案を持っていますか?

編集:

WindowState = Normal 

も設定されています。

編集2:

この問題が見つかりました。私は他の場所から借りていた、とその再スタートコードの一部だったのコードでそれを再起動し、その後、それが更新されることができるように私の更新ルーチンは、(不適切、それは別のバグです)元のプロセスをシャットダウンした

process.StartInfo.WindowStyle = ProcessWindowStyle.Maximized; 

ありがとうございました。直接の答えは与えられていませんが(まれな情報では期待されませんでしたが)、正しい方向に私を指摘しました。

+2

"無関係な"変更とは何ですか?これら3行のコード(コンストラクタまたはロードイベントで実行された場合)は大丈夫です。また、フォームのWindowStateがWindowState.Maximisedでないことを確認する必要があります。 – Skintkingle

+0

Maximizeボタンが表示されていることを示す 'MaximizeBox'。 'WindowState'プロパティをチェックしてください。' Max'ではなく 'Normal'でなければなりません。 – hmnzr

+0

ありがとうございます。私がちょうど追加したように、WindowStateは正常です。関連のない変更はインストーラ/アップデータにありました。 –

答えて

0

最大化されているウィンドウは、通常、 "WindowState"というフォーム、Light Readingに設定されています。これをWindowState.Normalに設定する必要があります。それは誰かがデザイナーで最大化するように設定されている可能性がありますか?コード内の他の場所に置くことができます。あなたが示したコードの3行は問題ではありません。

編集:

あなたは、私達にあなたのフォームからコードを与えるイベントのサイズを変更するいくつかにフック、そしてそれをトリガーしているものを参照カント場合は、いくつかの調査を行う必要があります。フォームは、指示されない限り最大化を開始せず、ウィンドウを最大化するとサイズ変更イベントがトリガーされます。

+0

この返信を開始した後で追加したように、WindowState = Normal。でもありがとう。 –

関連する問題