Усечение изображения флажка в TreeView
TreeNode в элементе управления TreeView позволяет пользователям настраивать DrawMode и добавлять флажки. Однако изображение флажка будет усечено из-за положения текста элемента TreeNode. Чтобы избежать влияния на обычное, частое использование, можно использовать параметр переключателя AppContext, чтобы избежать усечения флажков в этих конкретных ситуациях.
При выполнении всех следующих условий изображение флажка усечено:
-
CheckBoxes
установлено вtrue
-
DrawMode
установлен наOwnerDrawText
-
DrawDefault
задано значениеtrue
в событииOnDrawNode
Предыдущее поведение
В предыдущих версиях, когда в элементе управления TreeView CheckBoxes
было установлено значение true
, DrawMode
было установлено на OwnerDrawText
, а DrawDefault
установлено на true
в событии OnDrawNode
, изображения флажков TreeNode были усечены на правом краю.
Новое поведение
Установив переключатель "System.Windows.Forms.TreeView.MoveTreeViewTextLocationOnePixel": true
в файле конфигурации среды выполнения проекта, флажки TreeNode отображаются полностью, когда в TreeView CheckBoxes
установлено в true
, DrawMode
установлено в OwnerDrawText
и DrawDefault
установлено в true
в событии OnDrawNode
.
Представленная версия
.NET 10 (предварительная версия 1)
Тип критического изменения
Это изменение связано с изменением поведения.
Причина изменения
Это изменение гарантирует полное отображение флажка узла в элементе управления TreeView.
Рекомендуемое действие
Вручную добавьте "System.Windows.Forms.TreeView.MoveTreeViewTextLocationOnePixel": true
в файл проекта runtimeconfig.json для активации переключателя.
{
"runtimeOptions": {
"configProperties": {
"System.Windows.Forms.TreeView.MoveTreeViewTextLocationOnePixel": true
}
}
}