Troncamento dell'immagine della casella di controllo TreeView
Il TreeNode nel controllo TreeView consente agli utenti di personalizzare DrawMode e aggiungere caselle di controllo. Tuttavia, l'immagine della casella di controllo verrà troncata a causa della posizione del disegno di testo TreeNode. Per evitare di influire sul normale e comune utilizzo, è possibile utilizzare un'impostazione del selettore AppContext per evitare il troncamento delle caselle di controllo in queste situazioni specifiche.
L'immagine della casella di controllo viene troncata quando vengono soddisfatte tutte le condizioni seguenti:
-
CheckBoxes
è impostato sutrue
-
DrawMode
è impostato suOwnerDrawText
-
DrawDefault
è impostato sutrue
nell'eventoOnDrawNode
Comportamento precedente
Nelle versioni precedenti, quando il controllo TreeView aveva CheckBoxes
impostato su true
, DrawMode
impostato su OwnerDrawText
e DrawDefault
impostato su true
nell'evento OnDrawNode
, le immagini della casella di controllo TreeNode sono state mostrate troncate sul bordo destro.
Nuovo comportamento
Impostando l'opzione "System.Windows.Forms.TreeView.MoveTreeViewTextLocationOnePixel": true
nel file di configurazione del runtime del progetto, le caselle di controllo TreeNode vengono visualizzate completamente quando TreeView ha CheckBoxes
impostato su true
, DrawMode
impostato su OwnerDrawText
e DrawDefault
impostato su true
nell'evento OnDrawNode
.
Versione introdotta
.NET 10 Preview 1
Tipo di modifica che causa un'interruzione
Questa modifica è una modifica comportamentale .
Motivo della modifica
Questa modifica garantisce che la casella di controllo del nodo nel controllo TreeView possa essere visualizzata completamente.
Azione consigliata
Aggiungere manualmente "System.Windows.Forms.TreeView.MoveTreeViewTextLocationOnePixel": true
al file di runtimeconfig.json del progetto per abilitare l'opzione.
{
"runtimeOptions": {
"configProperties": {
"System.Windows.Forms.TreeView.MoveTreeViewTextLocationOnePixel": true
}
}
}