# GH_Item class

Namespace: [GH_IO.Types](https://developer.rhino3d.com/api/gh1/namespace/gh-io.types.md) · Assembly: [GH_IO](https://developer.rhino3d.com/api/gh1/assembly/gh-io.md)

```cs
[DebuggerDisplay("{DebuggerDisplay}")]
public class GH_Item : GH_IBinarySupport, GH_IXmlSupport
```

Represents a single data item in a chunk.

## Constructors

- [GH_Item](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/ctor.md): (58 overloads) Construct a new instance of GH_Item with the specified name and value.

## Properties

- [_bool](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/bool.md): Returns the internal data of this item cast to a Boolean. If the data is not stored as a Boolean, a conversion exception might be thrown.
- [_boundingbox](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/boundingbox.md): Returns the internal data of this item cast to a BoundingBox. If the data is not stored as a BoundingBox, a conversion exception might be thrown.
- [_byte](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/byte.md): Returns the internal data of this item cast to a Byte. If the data is not stored as a Byte, a conversion exception might be thrown.
- [_bytearray](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/bytearray.md): Returns the internal data of this item cast to a Byte array. If the data is not stored as a Byte array, a conversion exception might be thrown.
- [_date](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/date.md): Returns the internal data of this item cast to a DateTime. If the data is not stored as a DateTime, a conversion exception might be thrown.
- [_decimal](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/decimal.md): Returns the internal data of this item cast to a Decimal. If the data is not stored as a Decimal, a conversion exception might be thrown.
- [_double](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/double.md): Returns the internal data of this item cast to a Double. If the data is not stored as a Double, a conversion exception might be thrown.
- [_doublearray](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/doublearray.md): Returns the internal data of this item cast to a Byte array. If the data is not stored as a Byte array, a conversion exception might be thrown.
- [_drawing_bitmap](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/drawing-bitmap.md): Returns the internal data of this item cast to a Bitmap. If the data is not stored as a Bitmap, a conversion exception might be thrown.
- [_drawing_color](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/drawing-color.md): Returns the internal data of this item cast to a Color. If the data is not stored as a Color, a conversion exception might be thrown.
- [_drawing_point](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/drawing-point.md): Returns the internal data of this item cast to a Point. If the data is not stored as a Point, a conversion exception might be thrown.
- [_drawing_pointf](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/drawing-pointf.md): Returns the internal data of this item cast to a PointF. If the data is not stored as a PointF, a conversion exception might be thrown.
- [_drawing_rectangle](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/drawing-rectangle.md): Returns the internal data of this item cast to a Rectangle. If the data is not stored as a Rectangle, a conversion exception might be thrown.
- [_drawing_rectanglef](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/drawing-rectanglef.md): Returns the internal data of this item cast to a RectangleF. If the data is not stored as a RectangleF, a conversion exception might be thrown.
- [_drawing_size](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/drawing-size.md): Returns the internal data of this item cast to a Size. If the data is not stored as a Size, a conversion exception might be thrown.
- [_drawing_sizef](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/drawing-sizef.md): Returns the internal data of this item cast to a SizeF. If the data is not stored as a SizeF, a conversion exception might be thrown.
- [_guid](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/guid.md): Returns the internal data of this item cast to a Guid. If the data is not stored as a Guid, a conversion exception might be thrown.
- [_int32](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/int32.md): Returns the internal data of this item cast to an Int32. If the data is not stored as an Int32, a conversion exception might be thrown.
- [_int64](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/int64.md): Returns the internal data of this item cast to an Int64. If the data is not stored as an Int64, a conversion exception might be thrown.
- [_interval1d](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/interval1d.md): Returns the internal data of this item cast to an Interval1D. If the data is not stored as an Interval1D, a conversion exception might be thrown.
- [_interval2d](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/interval2d.md): Returns the internal data of this item cast to an Interval2D. If the data is not stored as an Interval2D, a conversion exception might be thrown.
- [_line](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/line.md): Returns the internal data of this item cast to a Line. If the data is not stored as a Line, a conversion exception might be thrown.
- [_plane](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/plane.md): Returns the internal data of this item cast to a Plane. If the data is not stored as a Plane, a conversion exception might be thrown.
- [_point2d](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/point2d.md): Returns the internal data of this item cast to a Point2D. If the data is not stored as a Point2D, a conversion exception might be thrown.
- [_point3d](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/point3d.md): Returns the internal data of this item cast to a Point3D. If the data is not stored as a Point3D, a conversion exception might be thrown.
- [_point4d](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/point4d.md): Returns the internal data of this item cast to a Point4D. If the data is not stored as a Point4D, a conversion exception might be thrown.
- [_single](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/single.md): Returns the internal data of this item cast to a Single. If the data is not stored as a Single, a conversion exception might be thrown.
- [_string](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/string.md): Returns the internal data of this item cast to a String. If the data is not stored as a String, a conversion exception might be thrown.
- [_version](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/version.md): Returns the internal data of this item cast to a Version. If the data is not stored as a Version, a conversion exception might be thrown.
- [DebuggerDisplay](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/debuggerdisplay.md): Readonly property used during Debugging.
- [HasIndex](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/hasindex.md): Gets the index existence implication. The item is considered to have an index qualifier if the index value is larger than or equal to zero.
- [HasName](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/hasname.md): Gets the name validity of this item. The item is considered to have an invalid name if string.IsNullOrEmpty(name)
- [HasType](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/hastype.md): Gets the type set validity of this item. The item is considered to have a type if type != GH_Types.unset
- [Index](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/index.md): Gets or sets the index of an item. Typically, indices are set at construction and do not change. If you change indices after construction, you could corrupt an archive.
- [InternalData](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/internaldata.md): Retrieves the internal data of this item. No type casting is performed.
- [Name](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/name.md): Gets or sets the name of this item. Typically, names are set at construction and do not change. If you change names after construction, you could corrupt an archive.
- [Type](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/type.md): Gets the type of this item. Type flags are set during construction and cannot be altered.

## Methods

- [CreateFrom](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/createfrom.md): (2 overloads, static) Creates a new instance of GH_Item and sets the fields from a reader object.
- [Read](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/read.md): (2 overloads) Deserialize this item from a binary stream.
- [ToString](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/tostring.md): Converts the struct into a human readable format.
- [Write](https://developer.rhino3d.com/api/gh1/type/gh-io.types.gh-item/write.md): (2 overloads) Serialize this item into a binary stream.
