dotnet / dotnet/winforms

Convert `ArrayList` usage to `List<T>` where possible

Open
#8,140 18 comments 4 reactions 0 assignees View on GitHub
enhancement help wanted tenet-performance
Dominant language
C#
Stars
4.9k
Forks
1.1k
Avg merge
20h 23m
Merged PRs (30d)
103

Description

### Is your feature request related to a problem? Please describe

Winforms uses `Arraylist` extensively.

### Describe the solution you'd like and alternatives you've considered

Convert `Arraylist` usage to `List` to reduce boxing and improve memory utilization.

### Will this feature affect UI controls?

N/A

Related: #2644

Remaining occurrences in `System.Windows.Forms.Design`
|File|Line Count|
|-----------------------------------------------------------------------------------------------------------------------------------------------------|----|
|src\System\ComponentModel\Design\ExceptionCollection.cs |33 |
|src\System\Windows\Forms\Design\ToolStripItemDataObject.cs |34 |
|src\System\Windows\Forms\Design\ControlDesigner.DesignerControlCollectionCodeDomSerializer.cs|38 |
|src\System\Windows\Forms\Design\UpDownBaseDesigner.cs |63 |
|src\System\Windows\Forms\Design\DesignBindingValueUIHandler.cs |66 |
|src\System\Windows\Forms\Design\ImageListImageEditor.cs |108 |
|src\System\Windows\Forms\Design\ImageCollectionEditor.cs |113 |
|src\System\Windows\Forms\Design\GroupBoxDesigner.cs |124 |
|src\System\Windows\Forms\Design\ComboBoxDesigner.cs |128 |
|src\System\Windows\Forms\Design\LabelDesigner.cs |146 |
|src\System\Windows\Forms\Design\TextBoxBaseDesigner.cs |148 |
|src\System\Windows\Forms\Design\OleDragDropHandler.CfCodeToolboxItem.cs |162 |
|src\System\Windows\Forms\Design\ButtonBaseDesigner.cs |218 |
|src\System\Windows\Forms\Design\Behavior\ContainerSelectorBehavior.cs |230 |
|src\System\Windows\Forms\Design\ToolStripAdornerWindowService.cs |256 |
|src\System\Windows\Forms\Design\BaseContextMenuStrip.cs |290 |
|src\System\Windows\Forms\Design\OleDragDropHandler.ComponentDataObject.cs |302 |
|src\System\ComponentModel\Design\InheritedPropertyDescriptor.cs |308 |
|src\System\Windows\Forms\Design\Behavior\ToolboxItemSnapLineBehavior.cs |338 |
|src\System\ComponentModel\Design\CollectionEditor.cs |347 |
|src\System\Windows\Forms\Design\FormDocumentDesigner.cs |432 |
|src\System\ComponentModel\Design\SelectionService.cs |446 |
|src\System\Windows\Forms\Design\Behavior\SelectionManager.cs |458 |
|src\System\ComponentModel\Design\DesignSurface.cs |491 |
|src\System\Windows\Forms\Design\DesignerFrame.cs |576 |
|src\System\Windows\Forms\Design\ToolStripDesignerUtils.cs |584 |
|src\System\ComponentModel\Design\Serialization\CollectionCodeDomSerializer.cs |648 |
|src\System\Windows\Forms\Design\DesignerUtils.cs |816 |
|src\System\Windows\Forms\Design\Behavior\ResizeBehavior.cs |819 |
|src\System\ComponentModel\Design\Serialization\BasicDesignerLoader.cs |857 |
|src\System\ComponentModel\Design\Serialization\DesignerSerializationManager.cs |896 |
|src\System\Windows\Forms\Design\ToolStripItemBehavior.cs |905 |
|src\System\Windows\Forms\Design\Behavior\DropSourceBehavior.cs |1029|
|src\System\Windows\Forms\Design\OleDragDropHandler.cs |1045|
|src\System\Windows\Forms\Design\ToolStripItemDesigner.cs |1177|
|src\System\ComponentModel\Design\CollectionEditor.CollectionEditorCollectionForm.cs |1223|
|src\System\ComponentModel\Design\Serialization\CodeDomComponentSerializationService.cs |1471|
|src\System\ComponentModel\Design\DesignerHost.cs |1615|
|src\System\Windows\Forms\Design\ToolStripKeyboardHandlingService.cs |1891|
|src\System\Windows\Forms\Design\ControlDesigner.cs |2205|
|src\System\Windows\Forms\Design\ToolStripDesigner.cs |2260|
|src\System\Windows\Forms\Design\ParentControlDesigner.cs |2378|
|src\System\Windows\Forms\Design\ToolStripMenuItemDesigner.cs |2527|
|src\System\ComponentModel\Design\Serialization\CodeDomSerializerBase.cs |3020|

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.