У меня есть приложение Winforms, которое корректно работает на разных версиях окон и разных разрешениях.Однако когда приложение работает на планшете Motion CL900, макеты полностью запутаны;в основном из-за того, что элементы управления панели, которые идеально подходят для других компьютеров, теперь слишком малы и вызывают полосы прокрутки.Устройства Motion работают под управлением Windows 7 Professional.
В нескольких сообщениях о stackoverflow я читал, что машины Windows имеют стандартное DPI 96, но это устройство явно не 96 DPI.Является ли тот факт, что это устройство является «нестандартным» результатом его экрана, или это вызвано настройкой в его OEM-версии Windows 7?Я прочитал, что я должен установить AutoScalingDimensions для моей формы, чтобы отражать DPI компьютера, на котором я разрабатываю.Но как мне узнать, на каком DPI / моей машине я работаю?
В моем файле конструктора для формы, в которой есть проблемы с макетом, есть следующее:
this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
Я был бы признателен всем, кто имел опыт работы с Winforms при различных разрешениях DPI, теряя некоторыеосветить этот вопрос и, возможно, дать некоторые рекомендации для разработчиков .Net, как успешно обрабатывать нестандартные DPI.