TrädVy, trunkering av bild

Med TreeNode i kontrollen TreeView kan användarna anpassa DrawMode och lägga till kryssrutor. Kryssrutebilden trunkeras dock på grund av placeringen av textritningen TreeNode. För att undvika att påverka normal, vanlig användning kan du använda en AppContext-växelinställning för att undvika kryssrutans trunkering i dessa specifika situationer.

Kryssrutebilden trunkeras när alla följande villkor uppfylls:

  • CheckBoxes är inställt på true
  • DrawMode är inställt på OwnerDrawText
  • DrawDefault är inställt på true i händelsen OnDrawNode

Tidigare beteende

I tidigare versioner, när TreeView-kontrollen hade CheckBoxes inställd på true, DrawMode inställd på OwnerDrawTextoch DrawDefault inställd på true i händelsen OnDrawNode, visades TreeNode-kryssrute-bilderna trunkerade på höger kantlinje.

Nytt beteende

Genom att ställa in växeln "System.Windows.Forms.TreeView.MoveTreeViewTextLocationOnePixel": true i projektets körningskonfigurationsfil kommer TreeNode-kryssrutorna att visas fullständigt om TreeView har CheckBoxes inställt på true, DrawMode inställt på OwnerDrawTextoch DrawDefault inställt på true i händelsen OnDrawNode.

Version introducerad

.NET 10

Ändring som bryter kompatibilitet

Den här ändringen är en beteendeförändring.

Orsak till ändring

Den här ändringen säkerställer att kryssrutan för noden i TreeView-kontrollen kan visas helt.

Lägg till "System.Windows.Forms.TreeView.MoveTreeViewTextLocationOnePixel": true i projektets runtimeconfig.json-fil manuellt för att aktivera växeln.

{
    "runtimeOptions": {
        "configProperties": {
            "System.Windows.Forms.TreeView.MoveTreeViewTextLocationOnePixel": true
        }
    }
}

Berörda API:er