System.RuntimeType.GetElementType C# (CSharp) Method

GetElementType() public method

public GetElementType ( ) : Type
return Type
        public override Type GetElementType()
        {
            if (elementType == null)

                // Element Type - Lazy load
                elementType = Type.GetTypeFromHandle(elementTypeHandle);
            return elementType;
        }

Usage Example

        internal static RuntimeType AddElementTypes(SerializationInfo info, RuntimeType type)
        {
            List<int> elementTypes = new List<int>();
            while(type.HasElementType)
            {
                if (type.IsSzArray)
                {
                    elementTypes.Add(SzArray);
                }
                else if (type.IsArray)
                {
                    elementTypes.Add(type.GetArrayRank());
                    elementTypes.Add(Array);
                }
                else if (type.IsPointer)
                {
                    elementTypes.Add(Pointer);
                }
                else if (type.IsByRef)
                {
                    elementTypes.Add(ByRef);
                }
                
                type = (RuntimeType)type.GetElementType();
            }

            info.AddValue("ElementTypes", elementTypes.ToArray(), typeof(int[]));

            return type;
        }
All Usage Examples Of System.RuntimeType::GetElementType