# ReflectedMemberProperty<TContainer, TValue>

> A ReflectedMemberProperty<TContainer, TValue> provides strongly typed access to an underlying FieldInfo or PropertyInfo object.

## Definition

* **Type:** Class
* **Namespace:** [Unity.Properties](/engine/6000.7/script-reference/unity/properties.md)
* **Assembly:** UnityEngine.PropertiesModule
* **Inherits from:** [Property\<T, T>](/engine/6000.7/script-reference/unity/properties/property2.md)
* **Implements:** [IProperty\<T>](/engine/6000.7/script-reference/unity/properties/iproperty1.md), [IProperty](/engine/6000.7/script-reference/unity/properties/iproperty.md), [IPropertyAccept\<T>](/engine/6000.7/script-reference/unity/properties/ipropertyaccept1.md)

```csharp
public class ReflectedMemberProperty<TContainer, TValue> : Property<TContainer, TValue>, IProperty<TContainer>, IProperty, IPropertyAccept<TContainer>
```

## Remarks

The implementation uses slow reflection calls internally. This is intended to be used as an intermediate solution for quick editor iteration.

## Constructors

| Constructor                                                                                                                                                                                                  | Description                                                                                                                                                                             |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [ReflectedMemberProperty\`2(System.Reflection.FieldInfo,System.String)](/engine/6000.7/script-reference/unity/properties/reflectedmemberproperty2/ctor.md#reflectedmemberproperty\(fieldinfo-string\))       | Initializes a new [ReflectedMemberProperty\<TContainer, TValue>](/engine/6000.7/script-reference/unity/properties/reflectedmemberproperty2.md) instance for the specified FieldInfo.    |
| [ReflectedMemberProperty\`2(System.Reflection.PropertyInfo,System.String)](/engine/6000.7/script-reference/unity/properties/reflectedmemberproperty2/ctor.md#reflectedmemberproperty\(propertyinfo-string\)) | Initializes a new [ReflectedMemberProperty\<TContainer, TValue>](/engine/6000.7/script-reference/unity/properties/reflectedmemberproperty2.md) instance for the specified PropertyInfo. |

## Inheritance

**Inherited Members:**

* [Property\<T, T>.DeclaredValueType()](/engine/6000.7/script-reference/unity/properties/property2/declaredvaluetype.md)
* [Property\<T, T>.Accept(IPropertyVisitor, T)](/engine/6000.7/script-reference/unity/properties/property2/accept.md)
* [Property\<T, T>.GetValue(T)](/engine/6000.7/script-reference/unity/properties/property2/getvalue.md)
* [Property\<T, T>.SetValue(T, T)](/engine/6000.7/script-reference/unity/properties/property2/setvalue.md)
* [Property\<T, T>.AddAttribute(Attribute)](/engine/6000.7/script-reference/unity/properties/property2/addattribute.md)
* [Property\<T, T>.AddAttributes(IEnumerable\<Attribute>)](/engine/6000.7/script-reference/unity/properties/property2/addattributes.md)
* [Property\<T, T>.HasAttribute\<T>()](/engine/6000.7/script-reference/unity/properties/property2/hasattribute.md)
* [Property\<T, T>.GetAttribute\<T>()](/engine/6000.7/script-reference/unity/properties/property2/getattribute.md)
* [Property\<T, T>.GetAttributes\<T>()](/engine/6000.7/script-reference/unity/properties/property2/getattributes.md)
* [Property\<T, T>.GetAttributes()](/engine/6000.7/script-reference/unity/properties/property2/getattributes.md)
* [Property\<T, T>.Name()](/engine/6000.7/script-reference/unity/properties/property2/name.md)
* [Property\<T, T>.IsReadOnly()](/engine/6000.7/script-reference/unity/properties/property2/isreadonly.md)
