While the member access operator, -> overloaded, it looks as if the subscript operator [] not, first expand gcroot .
using namespace System::Collections::ObjectModel; Collection<BModel::Device ^> ^d = Devices; d[0]
The above is an implicit listing (so you cannot use auto ). You can use static_cast if you need a single liner:
static_cast<Collection<BModel::Device ^> ^>(Devices)[0];
source share