2010-08-24 10 views
5

mam dziwny problem, że muszę dowiedzieć się, jak rozwiązać,kontrole .Net zmieniając wielkość między komputerami

spędziłem ostatnią parę tygodni pracy nad projektem do pracy na moim laptopie, ale kiedy otwórz program na jednym z komputerów roboczych dużo kontrole są niewłaściwy rozmiar i na kolanach itp

różnice pomiędzy maszynami to:

Laptop:

Windows 7 Pro; Wyświetlacz - 1920 * 1040; Visiual Studio 2008; .NET Framework 3.5

Pracuj Pulpit:

Windows XP Pro; wyświetlacz: 1024 * 768; visual studio 2008; .NET Framework 3.5;

aby lepiej opisać problem, mam panel, który mam ustawiony na 300px szeroki, który ma etykietę wewnątrz z dniem i dniem w formacie mm-DD-rrrr, używając czcionki arial i size 8.

Na laptopie wszystko pasuje idealnie, ale na pulpicie panel wydaje się mniejszy, a etykieta wyświetla tylko połowę tekstu.

To tylko jeden z wielu problemów, inny jest z koloru system.control wydaje się być zupełnie inny kolor pomiędzy systemami (althoug mogę zrozumieć, że aby być win7 vs problemu XP)

Co mogę zrobić, aby napraw to? jest to problem z wersją systemu Windows? (Mam XP na maszynie vmware na moim laptopie, więc mogłem kodować i projektować)

czy to jest problem z wyświetlaniem? - jest to dla mnie duży problem, ponieważ mam tylko 1 laptopa i myślę, że ten problem mógł spowodować straty na mojej ostatniej misji dla Uni (kodowałem na laptopie i nigdy nie otwierałem na komputerze do dzisiaj - więc nie miałem pojęcia, ten problem)

EDYCJA: Znalazłem rozwiązanie rodzaju dla mojego konkretnego problemu, odkryłem, że mój laptop pracował na 125% na ustawienia dpi dla osób niedowidzących (nie wiem jak ..), więc zresetowałem to Z powrotem do 100% lub 96Dpi Które naprawiło moje problemy i po rozmowie z kilkoma innymi programistami, które znam, mówią, że mają tendencję do projektowania dla 96 dpi, pozostawiając trochę białego odstępu wokół tekstu, aby być bezpiecznym. ale potem nie mają tendencji do używania C# dużo i głównie kodują wszystko w C++ za pomocą struktury QT.

+2

Jest to typowy problem występujący w WinForm i jest związany z DPI każdego wyświetlacza. Jeśli używasz google do "winforms DPI", dostaniesz dużo hitów na ten temat. –

Odpowiedz

11

Adapter wideo na stacji roboczej ma inne ustawienie punktów na cal. Formularz automatycznie przeskalowuje się, aby to uwzględnić.

Tak też się stanie, gdy wyślesz produkt i będzie on działał na komputerze klienta. Zmiana właściwości AutoScaleMode formularza nie jest poprawką, która spowoduje tylko przycięcie tekstu w elementach sterujących. Upewnij się, że projekt jest odporny na zmiany układu. Dock, Anchor, TableLayoutPanel, FlowLayoutPanel, Zdarzenie Resize dla trudnych przypadków.Upewnij się także, że elementy sterujące dziedziczą właściwość Czcionka kontenera (nie jest pogrubione w oknie Właściwości).

2

Upewnij się, że możesz zmienić rozmiar panelu w programie Visual Studio, a wszystkie elementy sterujące wewnątrz niego są zmieniane i odpowiednio zmieniane. Możesz użyć kotwic, aby to osiągnąć, lub powinieneś użyć kontrolki TableLayoutPanel zamiast zwykłego .

Powiązane problemy