.Net-Steuerelemente ändern der Größe zwischen Computern
Ich habe eine seltsame problem, dass ich brauche, um herauszufinden, wie zu lösen,
Ich habe in den letzten paar Wochen an einem Projekt arbeiten, für die Arbeit auf meinem laptop, aber wenn ich öffnen Sie das Programm auf einem der pcs arbeiten eine Menge der Kontrollen sind die falsche Größe und überschneiden etc,
die Unterschiede zwischen den Maschinen ist diese:
Laptop:
Windows 7 Pro;
Display - 1920*1040;
Visiual Studio 2008;
.net framework 3.5
Desktop:
windows xp pro;
display: 1024*768;
visual studio 2008;
.net framework 3.5;
beschreibe das problem besser, ich habe ein panel, welches ich eingestellt habe werden 300px breit, das hat ein Etikett im inneren, mit dem Tag und den Tag in der mm-DD-yyyy-format, die Verwendung von arial und Größe 8 font.
Auf dem laptop-es passt alles perfekt, aber auf dem desktop das panel scheint kleiner und die Beschriftung zeigt immer nur der halbe text.
Ist nur eines von vielen Problemen, ein anderer ist mit Farb-system.Kontrolle scheint eine völlig andere Farbe zwischen den Systemen (althoug ich vermute, dass ein win7 vs xp problem)
Was kann ich tun um dies zu beheben?
ist es eine windows-version problem? (Ich habe xp auf einer vmware-Maschine auf meinem laptop, also könnte ich code-und design-in, die)
ist es ein display-problem? - das ist ein großes problem für mich, da ich nur 1 laptop und ich denke, das problem verursacht haben könnte mir mark Verlust meiner letzten Aufgabe für die Uni (ich codiert auf dem laptop und noch nie geöffnet auf einem desktop-bis heute - hatte also keine Vorstellung von diesem problem)
EDIT: ich habe gefunden eine mögliche Lösung für mein spezielles problem, ich habe entdeckt, dass mein laptop arbeitete auf 125% dpi-Einstellungen für sehbehinderte (keine Ahnung wie..), so habe ich es zurücksetzen zurück zu 100% oder 96 dpi, Die repariert hat, meine Probleme, und nach einer Unterhaltung mit ein paar anderen Entwicklern weiß ich, Sie sagen, Sie neigen design für 96 dpi, wobei ein wenig der weißen Raum um den text sicher zu sein. aber dann werden Sie nicht dazu neigen, verwenden Sie c# viel und vor allem code, der in c++ unter Verwendung von QT-framework.
- Dies ist ein häufiges problem mit WinForms und bezieht sich auf jede Anzeige des DPI. Wenn Sie bei google nach "winforms DPI", erhalten Sie viele Zugriffe auf diese.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Das video-adapter in Ihrem Arbeitsplatz hat eine andere dots-per-inch-Einstellung. Die form automatisch vergrößert oder verkleinert sich um die Aufnahme.
Dies ist geschehen, als auch, wenn Sie Ihr Produkt versenden, und es wird laufen auf dem client-Rechner. Die änderung der Formular-Eigenschaft AutoScaleMode ist nicht fix, das wird produzieren nur beschnitten, text in die Steuerelemente. Stellen Sie sicher, dass Sie form-design ist elastisch, um layout-änderungen. Dock, Anker, TableLayoutPanel, FlowLayoutPanel, das Resize-Ereignis für die schwierigen Fälle. Und stellen Sie sicher, dass die Steuerelemente Erben die container-Font-Eigenschaft (nicht Fett im Eigenschaften-Fenster)
Sicherzustellen, dass Sie können die Größe Ihrer panel in Visual Studio mit alle Steuerelemente darin neu positioniert und in der Größe richtig. Sie können Anker verwenden, um dies zu erreichen, oder vielleicht sollten Sie eine
TableLayoutPanel
Kontrolle statt einer regulärenPanel
.Ändern Sie die Einstellung für AutoScaleMode.