WPF : Automatische Größenanpassung steuert
Ich würde gerne wissen, ob es eine Art von automatischer Kontrolle der Dimensionierung in WPF.
Meine ich, ein Weg, um auto-Größe element in Bezug auf die Bildschirmauflösung des Benutzers, ohne zu definieren, es in den code.
Dank.
- Könnten Sie uns ein Beispiel geben von dem, was Sie zu tun versuchen? Sie können schreiben Sie einfach "< "TextElement" Width="Auto" Height="Auto"..., oder sind Sie nach noch etwas anderes?
Du musst angemeldet sein, um einen Kommentar abzugeben.
First off, WPF verwendet Gerät indepdendent Pixel das heißt, es angemessen zu skalieren, die mit dem DPI der Benutzer gewählt hat. Das heißt, ich glaube nicht, dass Sie Fragen über die DPI hier, sondern du fragst nach Skalierung mit der Auflösung.
Wenn Sie möchten, dass Ihre UI zu skalieren, um den verfügbaren Platz zur Verfügung gestellt durch das Fenster, das Sie verwenden können, ein ViewBox-Steuerelement als das root-element des Fensters. Dann, alles, was Sie dort drinnen wird die Skala nach der Art und Weise konfigurieren Sie die Viewbox.
Beachten Sie, dass dies nicht der typische Ansatz von Anwendungen verwendet, wie Sie in der Regel wachsen/reflow -, sich selbst mehr Raum. Zum Beispiel ein Raster kann verwendet werden, um einen wichtigen Abschnitt der Benutzeroberfläche Raum über einem anderen.
Ist die Antwort JA. Wenn Sie möchten, dass Ihre Kontrollen zu passen Ihre Größe basierend auf der Größe der Fenster, es gibt viele Möglichkeiten, es zu tun.
Für fast jede Steuern, diese sind nützlich:
Für ein flexibles layout mit einem raster:
Für die zentralen Bereiche umgeben von Platten, oder füllen Sie den rest einer Zeile /Spalte:
Halten für etwas, das die gleiche Form, aber dehnen oder schrumpfen es zu passen:
Es gibt viele andere.
Wenn Sie möchten, dass Ihre Kontrollen zu bekommen größer oder kleiner auf dem Bildschirm basierend auf den Windows display Einstellungen wie DPI, es passieren wird standardmäßig. Wenn der Benutzer macht das system die icons und Schriften größer, Ihre Texte, Symbole, Schriften etc größer sein wird als gut.
Wenn Sie möchten, binden Sie die Größe der Objekte auf dem Bildschirm, um bestimmte system-Einstellungen, die Sie binden können, um die Eigenschaften des SystemParameters und SystemFonts Klassen, wie:
gibt es rund 75 dieser Einstellungen. Normalerweise würde man diese nicht dafür verwenden, weil die normale Einstellung WPF macht, um Ihr Objekt Größen, basierend auf DPI ist in der Regel genug.
Normalerweise würden Sie nicht wollen, zu zwingen, Ihre on-screen-Objekte, die eine bestimmte Anzahl von Pixeln ein, weil Sie winzig erscheinen auf hochauflösenden Bildschirmen, auch wenn der end-Nutzer hat Windows so konfiguriert, für die Dinge, die erscheinen große. Wäre dies nicht eine gute Sache sein. Die einzige Ausnahme ist hier, wenn Sie möchten, erfassen von screenshots als bitmaps, die für eine bestimmte Auflösung des Bildschirms. In diesem Fall können Sie Ihre Größe wie folgt: