winforms icon indicating copy to clipboard operation
winforms copied to clipboard

Allow internal types to be selected as object data source for binding

Open myth384 opened this issue 1 year ago • 4 comments

Environment

Microsoft Visual Studio Enterprise 2022 (64-bit) - Version 17.9.6

.NET version

.NET 8

Did this work in a previous version of Visual Studio and/or previous .NET release?

Nope

Issue description

We are unable to select internal types as a DataSource for binding. Our company policy is to have all non-customer-facing public APIs set to internal and make them internally available within the company using the InternalsVisibleTo project element.

As a current workaround, we temporarily set the access modifier of the classes to public, and then revert them back to internal after selecting the type in question. However, this can become cumbersome with larger view models that have multiple layers of internal classes, where the public modifier has to cascade to every dependency.

Steps to reproduce

  1. Create a new .NET 8 WinForms project
  2. Create a internal class with a public property for data binding
  3. Add a control to the Form supporting data binding
  4. Attempt to set the DataSource (or DataContext) of the control to the internal class using the "Add and update object data sources" tool
  5. Observe an empty list

Diagnostics

No response

myth384 avatar May 21 '24 09:05 myth384

@KlausLoeffelmann what is the plausibility of this?

JeremyKuhne avatar May 21 '24 18:05 JeremyKuhne

@JeremyKuhne: It's likely an oversight and a breaking change from .NET Framework. Need to be fixed in the Designer, though. -> VSNext.

@Olina-Zhang: If we haven't yet, can you create an Issue in the Designer (or move it to VSNext), and keep this open for tracking?

KlausLoeffelmann avatar Jul 23 '24 19:07 KlausLoeffelmann

@KlausLoeffelmann we have a known Designer issue about Friend class is not shown when binding data source from project, can use it to track these similar issues.

Olina-Zhang avatar Jul 24 '24 06:07 Olina-Zhang

Scheduled for 17.13.

KlausLoeffelmann avatar Oct 11 '24 14:10 KlausLoeffelmann