最近、カスタムWPFフォームの作業中に問題に遭遇しました。(とにかく、それらはすべてカスタムではありませんか?)。次のプロパティを XAML に追加しました。
AllowsTransparency="True"
ResizeMode="NoResize"
Height="945"
Width="1621"
WindowStyle="None"
上記のサイズのカスタム背景画像:
<Window.Background>
<ImageBrush ImageSource="Images/form_bg.png" />
</Window.Background>
そして、それを実行した後、私が追加したいくつかのボタンが単に消えました. ボタンが表示され始めたのは、ボタンのサイズを大きくした後(おおよその300
高さと幅)でした。
何が起こっているのかを理解するのに少し時間がかかりました.... Windows は私のフォームのサイズを変更してい15
まし1366 x 768
た8.1
。70%
私のコントロールは余白を使用し、XAMLコードはそのまま残されましたが、実際のフォーム サイズが縮小されたため、私のコントロールは単純に折りたたまれました。
明らかな解決策は、画像を小さくすることです。おそらく少しトリミングします。1280x1024
共通の決議として、それを適合させましょう。1024x768
しかし、モニターを使用している誰かがそれを実行し、それが失敗した場合はどうなるでしょうか?
MinWidth プロパティと MinHeightプロパティを追加し、Width & Height と同じ値に設定することで Windows のサイズ変更を修正できましたが、フォームを移動した後、下部のコンテンツの一部が画面から消えてしまいました。
だから、私が探しているのは、これに対処する適切な方法です。まともなユーザーフレンドリーなソリューション。コントロールのサイズを変更できるとしたら、ユーザーは小さな画面で一部のコンテンツを読みにくくなる可能性があります。
または、ウィンドウの位置に関係なく、C# を使用してウィンドウの一部にフォーカスを維持できますか? その部分が画面から落ちない限り、そうです。
ヒント、ヒント、サンプルは大歓迎です!