Delen via


DefaultValueAttribute verwijderd uit sommige eigenschappen

DefaultValueAttribute is verwijderd uit besturingselementeigenschappen die afhankelijk zijn van de standaardtekenhoogte.

Geïntroduceerde versie

.NET 8

Vorig gedrag

De betrokken eigenschappen zijn versierd met DefaultValueAttributeen standaardwaarden zijn vastgelegd volgens een aangenomen lettertype voor de hele toepassing.

Nieuw gedrag

Vanaf .NET 8 wordt het kenmerk verwijderd uit bepaalde eigenschappen. Standaardwaarden voor ontwerptijd worden berekend bij het opstarten op basis van de huidige metrische lettertypegegevens.

Categorie wijzigen

Deze wijziging is een gedragswijziging.

Reden voor wijziging

Het DefaultValueAttribute kenmerk is ontworpen om constante standaardwaarden te definiëren die worden gebruikt door de Ontwerpfunctie voor Windows Forms. In het verleden is dit kenmerk gebruikt om standaardwaarden op te geven voor bepaalde eigenschappen die afhankelijk zijn van de huidige tekenhoogte. Er is een nieuw standaardlettertype geïntroduceerd in .NET Core 3.1, maar de kenmerkwaarden zijn niet dienovereenkomstig bijgewerkt. Bovendien is er nu een API om het lettertype van de toepassing te wijzigen. Het is dus logisch om dynamische standaardwaarden te gebruiken in plaats van constante waarden.

De ontwerper biedt methoden voor het opgeven van dynamische standaardwaarden, maar voor eigenschappen die zijn voorzien van DefaultValueAttribute, wordt altijd de constante standaardwaarde gebruikt. De methoden voor het opgeven van dynamische standaardwaarden behouden de ontwerptijdfunctionaliteit van het kenmerk.

DefaultValueAttribute is bedoeld voor intern gebruik in ontwerpscenario's. Gebruik deze niet in andere scenario's.

Betreffende API's

De volgende tabel bevat de betreffende eigenschappen.

Vastgoed Versie wijzigen
System.Windows.Forms.DataGridViewRow.Height Preview 2
System.Windows.Forms.ListBox.ItemHeight Preview 2