У меня есть PowerShell сценария с полого окном и как все больше и больше людей используют ДОИТЕ масштабирование я тестировал свою форму соответственно.DPI масштабирования границ окна Winforms идет не так
Странно, кажется, масштабируется (до некоторой степени) до 150%, но с 175% форма сама по себе (красная) растет намного больше, чем richtextbox (серый), как видно из приведенного ниже примера.
Любые идеи о том, как исправить или предотвратить это?
[void][System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms")
$form = New-Object System.Windows.Forms.Form
$form.Size = "200,200"
$form.FormBorderStyle = "None"
$form.BackColor = "#C15959"
$form.TopMost = $true
$form.StartPosition = "CenterScreen"
$form.AutoScalemode = "Dpi"
$form.AutoSize = $true
$form.AutoSizeMode = "GrowOnly"
$rtb = New-Object System.Windows.Forms.RichTextBox
$rtb.BorderStyle = "FixedSingle"
$rtb.BackColor = "#EDEDED"
$rtb.Anchor = "Top,Bottom,Right,Left"
$rtb.Size = "181,155"
$rtb.Location = "1,1"
$rtb.AutoSize = $true
$rtb.add_mouseclick({ $form.close()})
$form.Controls.Add($rtb)
$form.showdialog()
Форма на 100% DPI масштабирование:
форма на 175% DPI масштабирование:
Кажется, это дубликат [Как написать код WinForms, который автоматически масштабируется до системного шрифта и настроек dpi?] (Http://stackoverflow.com/a/29766847/608772). – JPBlanc
Ну, если вы считаете, что это дубликат, вы можете наглядно указать, что именно в связанной нити решит мою проблему. Я не вижу ничего там, что здесь применимо. – Moss
Как я могу читать в вашем коде, вы не применяете все правила в ответе, на который я указываю. – JPBlanc