Member '<membername>' implicitly defines a member '<implicitmembername>' which has the same name as a type parameter
A member of a generic class generates an implicit member with the same name as a type parameter for the class.
The Visual Basic compiler creates implicit members corresponding to certain programming elements you declare. The following table summarizes these implicit, or synthetic, members.
Declared element |
Implicitly created members |
---|---|
Enumeration |
value__ member |
Event |
add_<eventname> procedure remove_<eventname> procedure <eventname>Event field <eventname>EventHandler delegate |
Property |
get_<propertyname> procedure set_<propertyname> procedure |
My. collection variable |
m_<variablename>Static variable <variablename> property get_<variablename> procedure set_<variablename> procedure |
WithEvents variable |
_<variablename> variable <variablename> property get_<variablename> procedure set_<variablename> procedure |
Because of the possibility of name conflicts, you should avoid naming any declared programming element using the same form as any of these implicit members. For example, you should avoid any element name that begins with get_ or set_.
Error ID: BC32070
To correct this error
If the name of the type parameter is flexible, change it to avoid conflicts with the names listed in the preceding table.
If the type parameter must retain its name, change the name of the class member to avoid conflicts with the names listed in the preceding table.