# VisualElementReferenceField

> Makes a field to receive any VisualElementReference type.

## Definition

* **Type:** Class
* **Namespace:** [UnityEditor.UIElements](/engine/6000.5/script-reference/unityeditor/uielements.md)
* **Assembly:** UnityEditor
* **Inherits from:** [BaseField\<VisualElementReference>](/engine/6000.5/script-reference/unityengine/uielements/basefield1.md)
* **Implements:** [IEventHandler](/engine/6000.5/script-reference/unityengine/uielements/ieventhandler.md), [IResolvedStyle](/engine/6000.5/script-reference/unityengine/uielements/iresolvedstyle.md), [ITransform](/engine/6000.5/script-reference/unityengine/uielements/itransform.md), [ITransitionAnimations](/engine/6000.5/script-reference/unityengine/uielements/experimental/itransitionanimations.md), [IExperimentalFeatures](/engine/6000.5/script-reference/unityengine/uielements/iexperimentalfeatures.md), [IVisualElementScheduler](/engine/6000.5/script-reference/unityengine/uielements/ivisualelementscheduler.md), [ICustomStyle](/engine/6000.5/script-reference/unityengine/uielements/icustomstyle.md), [IBindable](/engine/6000.5/script-reference/unityengine/uielements/ibindable.md), [INotifyValueChanged\<VisualElementReference>](/engine/6000.5/script-reference/unityengine/uielements/inotifyvaluechanged1.md), [IMixedValueSupport](/engine/6000.5/script-reference/unityengine/uielements/imixedvaluesupport.md)

```csharp
public class VisualElementReferenceField : BaseField<VisualElementReference>, IEventHandler, IResolvedStyle, ITransform, ITransitionAnimations, IExperimentalFeatures, IVisualElementScheduler, ICustomStyle, IBindable, INotifyValueChanged<VisualElementReference>, IMixedValueSupport
```

## Static Fields

| Value                                                                                                                              | Description                                                   |
| ---------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------- |
| [inputUssClassName](/engine/6000.5/script-reference/unityeditor/uielements/visualelementreferencefield/inputussclassname.md)       | USS class name of input elements in elements of this type.    |
| [labelUssClassName](/engine/6000.5/script-reference/unityeditor/uielements/visualelementreferencefield/labelussclassname.md)       | USS class name of labels in elements of this type.            |
| [objectUssClassName](/engine/6000.5/script-reference/unityeditor/uielements/visualelementreferencefield/objectussclassname.md)     | USS class name of object elements in elements of this type.   |
| [selectorUssClassName](/engine/6000.5/script-reference/unityeditor/uielements/visualelementreferencefield/selectorussclassname.md) | USS class name of selector elements in elements of this type. |
| [ussClassName](/engine/6000.5/script-reference/unityeditor/uielements/visualelementreferencefield/ussclassname.md)                 | USS class name of elements of this type.                      |

## Constructors

| Constructor                                                                                                                              | Description                                                                                   |
| ---------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
| [VisualElementReferenceField(System.String)](/engine/6000.5/script-reference/unityeditor/uielements/visualelementreferencefield/ctor.md) | Initializes a new instance of the VisualElementReferenceField class with the specified label. |

## Properties

| Property                                                                                                         | Description                                                                                                                                          |
| ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
| [elementType](/engine/6000.5/script-reference/unityeditor/uielements/visualelementreferencefield/elementtype.md) | The type that can be assigned, must be a [VisualElement](/engine/6000.5/script-reference/unityengine/uielements/visualelement.md) or derive from it. |

## Inheritance

**Inherited Members:**

* [BaseField\<VisualElementReference>.noLabelVariantUssClassName](/engine/6000.5/script-reference/unityengine/uielements/basefield1/nolabelvariantussclassname.md)
* [BaseField\<VisualElementReference>.labelDraggerVariantUssClassName](/engine/6000.5/script-reference/unityengine/uielements/basefield1/labeldraggervariantussclassname.md)
* [BaseField\<VisualElementReference>.mixedValueLabelUssClassName](/engine/6000.5/script-reference/unityengine/uielements/basefield1/mixedvaluelabelussclassname.md)
* [BaseField\<VisualElementReference>.alignedFieldUssClassName](/engine/6000.5/script-reference/unityengine/uielements/basefield1/alignedfieldussclassname.md)
* BaseField\<VisualElementReference>.HandleEventBubbleUp(EventBase)
* [BaseField\<VisualElementReference>.UpdateMixedValueContent()](/engine/6000.5/script-reference/unityengine/uielements/basefield1/updatemixedvaluecontent.md)
* [BaseField\<VisualElementReference>.SetValueWithoutNotify(VisualElementReference)](/engine/6000.5/script-reference/unityengine/uielements/basefield1/setvaluewithoutnotify.md)
* [BaseField\<VisualElementReference>.rawValue](/engine/6000.5/script-reference/unityengine/uielements/basefield1/rawvalue.md)
* [BaseField\<VisualElementReference>.value](/engine/6000.5/script-reference/unityengine/uielements/basefield1/value.md)
* [BaseField\<VisualElementReference>.labelElement](/engine/6000.5/script-reference/unityengine/uielements/basefield1/labelelement.md)
* [BaseField\<VisualElementReference>.label](/engine/6000.5/script-reference/unityengine/uielements/basefield1/label.md)
* [BaseField\<VisualElementReference>.showMixedValue](/engine/6000.5/script-reference/unityengine/uielements/basefield1/showmixedvalue.md)
* [BaseField\<VisualElementReference>.mixedValueLabel](/engine/6000.5/script-reference/unityengine/uielements/basefield1/mixedvaluelabel.md)
* [BindableElement.binding](/engine/6000.5/script-reference/unityengine/uielements/bindableelement/binding.md)
* [BindableElement.bindingPath](/engine/6000.5/script-reference/unityengine/uielements/bindableelement/bindingpath.md)
* [VisualElement.disabledUssClassName](/engine/6000.5/script-reference/unityengine/uielements/visualelement/disabledussclassname.md)
* [VisualElement.SetActivePseudoState(bool)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/setactivepseudostate.md)
* [VisualElement.SetCheckedPseudoState(bool)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/setcheckedpseudostate.md)
* [VisualElement.ReleaseResources()](/engine/6000.5/script-reference/unityengine/uielements/visualelement/releaseresources.md)
* [VisualElement.SendEvent(EventBase)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/sendevent.md)
* [VisualElement.SetEnabled(bool)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/setenabled.md)
* [VisualElement.MarkDirtyRepaint()](/engine/6000.5/script-reference/unityengine/uielements/visualelement/markdirtyrepaint.md)
* [VisualElement.IsMarkedForRepaint()](/engine/6000.5/script-reference/unityengine/uielements/visualelement/ismarkedforrepaint.md)
* [VisualElement.ContainsPoint(Vector2)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/containspoint.md)
* [VisualElement.GetClasses()](/engine/6000.5/script-reference/unityengine/uielements/visualelement/getclasses.md)
* [VisualElement.ClearClassList()](/engine/6000.5/script-reference/unityengine/uielements/visualelement/clearclasslist.md)
* [VisualElement.AddToClassList(string)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/addtoclasslist.md#addtoclasslist\(string\))
* [VisualElement.AddToClassList(string\[\])](/engine/6000.5/script-reference/unityengine/uielements/visualelement/addtoclasslist.md#addtoclasslist\(string\))
* [VisualElement.RemoveFromClassList(string)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/removefromclasslist.md)
* [VisualElement.ToggleInClassList(string)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/toggleinclasslist.md)
* [VisualElement.EnableInClassList(string, bool)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/enableinclasslist.md)
* [VisualElement.ClassListContains(string)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/classlistcontains.md)
* [VisualElement.FindAncestorUserData()](/engine/6000.5/script-reference/unityengine/uielements/visualelement/findancestoruserdata.md)
* [VisualElement.SetBinding(BindingId, Binding)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/setbinding.md)
* [VisualElement.GetBinding(BindingId)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/getbinding.md)
* [VisualElement.TryGetBinding(BindingId, Binding)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/trygetbinding.md)
* [VisualElement.GetBindingInfos()](/engine/6000.5/script-reference/unityengine/uielements/visualelement/getbindinginfos.md#getbindinginfos\(\))
* [VisualElement.GetBindingInfos(List\<BindingInfo>)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/getbindinginfos.md#getbindinginfos\(listbindinginfo\))
* [VisualElement.HasBinding(BindingId)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/hasbinding.md)
* [VisualElement.ClearBinding(BindingId)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/clearbinding.md)
* [VisualElement.ClearBindings()](/engine/6000.5/script-reference/unityengine/uielements/visualelement/clearbindings.md)
* [VisualElement.GetHierarchicalDataSourceContext()](/engine/6000.5/script-reference/unityengine/uielements/visualelement/gethierarchicaldatasourcecontext.md)
* [VisualElement.GetDataSourceContext(BindingId)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/getdatasourcecontext.md)
* [VisualElement.TryGetDataSourceContext(BindingId, DataSourceContext)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/trygetdatasourcecontext.md)
* [VisualElement.TryGetLastBindingToUIResult(BindingId, BindingResult)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/trygetlastbindingtouiresult.md)
* [VisualElement.TryGetLastBindingToSourceResult(BindingId, BindingResult)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/trygetlastbindingtosourceresult.md)
* [VisualElement.Add(VisualElement)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/add.md)
* [VisualElement.Insert(int, VisualElement)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/insert.md)
* [VisualElement.Remove(VisualElement)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/remove.md)
* [VisualElement.RemoveAt(int)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/removeat.md)
* [VisualElement.Clear()](/engine/6000.5/script-reference/unityengine/uielements/visualelement/clear.md#clear\(\))
* [VisualElement.Clear(VisualElementClearOptions)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/clear.md#clear\(visualelementclearoptions\))
* [VisualElement.ElementAt(int)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/elementat.md)
* [VisualElement.IndexOf(VisualElement)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/indexof.md)
* [VisualElement.Children()](/engine/6000.5/script-reference/unityengine/uielements/visualelement/children.md)
* [VisualElement.Sort(Comparison\<VisualElement>)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/sort.md)
* [VisualElement.BringToFront()](/engine/6000.5/script-reference/unityengine/uielements/visualelement/bringtofront.md)
* [VisualElement.SendToBack()](/engine/6000.5/script-reference/unityengine/uielements/visualelement/sendtoback.md)
* [VisualElement.PlaceBehind(VisualElement)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/placebehind.md)
* [VisualElement.PlaceInFront(VisualElement)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/placeinfront.md)
* [VisualElement.RemoveFromHierarchy()](/engine/6000.5/script-reference/unityengine/uielements/visualelement/removefromhierarchy.md)
* [VisualElement.GetFirstOfType\<T>()](/engine/6000.5/script-reference/unityengine/uielements/visualelement/getfirstoftype.md)
* [VisualElement.GetFirstAncestorOfType\<T>()](/engine/6000.5/script-reference/unityengine/uielements/visualelement/getfirstancestoroftype.md)
* [VisualElement.Contains(VisualElement)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/contains.md)
* [VisualElement.FindCommonAncestor(VisualElement)](/engine/6000.5/script-reference/unityengine/uielements/visualelement/findcommonancestor.md)
* [VisualElement.viewDataKey](/engine/6000.5/script-reference/unityengine/uielements/visualelement/viewdatakey.md)
* [VisualElement.userData](/engine/6000.5/script-reference/unityengine/uielements/visualelement/userdata.md)
* [VisualElement.disablePlayModeTint](/engine/6000.5/script-reference/unityengine/uielements/visualelement/disableplaymodetint.md)
* [VisualElement.usageHints](/engine/6000.5/script-reference/unityengine/uielements/visualelement/usagehints.md)
* [VisualElement.scaledPixelsPerPoint](/engine/6000.5/script-reference/unityengine/uielements/visualelement/scaledpixelsperpoint.md)
* [VisualElement.layout](/engine/6000.5/script-reference/unityengine/uielements/visualelement/layout.md)
* [VisualElement.contentRect](/engine/6000.5/script-reference/unityengine/uielements/visualelement/contentrect.md)
* [VisualElement.paddingRect](/engine/6000.5/script-reference/unityengine/uielements/visualelement/paddingrect.md)
* [VisualElement.worldBound](/engine/6000.5/script-reference/unityengine/uielements/visualelement/worldbound.md)
* [VisualElement.localBound](/engine/6000.5/script-reference/unityengine/uielements/visualelement/localbound.md)
* [VisualElement.worldTransform](/engine/6000.5/script-reference/unityengine/uielements/visualelement/worldtransform.md)
* [VisualElement.hasActivePseudoState](/engine/6000.5/script-reference/unityengine/uielements/visualelement/hasactivepseudostate.md)
* [VisualElement.hasInactivePseudoState](/engine/6000.5/script-reference/unityengine/uielements/visualelement/hasinactivepseudostate.md)
* [VisualElement.hasHoverPseudoState](/engine/6000.5/script-reference/unityengine/uielements/visualelement/hashoverpseudostate.md)
* [VisualElement.hasCheckedPseudoState](/engine/6000.5/script-reference/unityengine/uielements/visualelement/hascheckedpseudostate.md)
* [VisualElement.hasEnabledPseudoState](/engine/6000.5/script-reference/unityengine/uielements/visualelement/hasenabledpseudostate.md)
* [VisualElement.hasDisabledPseudoState](/engine/6000.5/script-reference/unityengine/uielements/visualelement/hasdisabledpseudostate.md)
* [VisualElement.hasFocusPseudoState](/engine/6000.5/script-reference/unityengine/uielements/visualelement/hasfocuspseudostate.md)
* [VisualElement.hasRootPseudoState](/engine/6000.5/script-reference/unityengine/uielements/visualelement/hasrootpseudostate.md)
* [VisualElement.pickingMode](/engine/6000.5/script-reference/unityengine/uielements/visualelement/pickingmode.md)
* [VisualElement.name](/engine/6000.5/script-reference/unityengine/uielements/visualelement/name.md)
* [VisualElement.resourcesReleased](/engine/6000.5/script-reference/unityengine/uielements/visualelement/resourcesreleased.md)
* [VisualElement.enabledInHierarchy](/engine/6000.5/script-reference/unityengine/uielements/visualelement/enabledinhierarchy.md)
* [VisualElement.enabledSelf](/engine/6000.5/script-reference/unityengine/uielements/visualelement/enabledself.md)
* [VisualElement.languageDirection](/engine/6000.5/script-reference/unityengine/uielements/visualelement/languagedirection.md)
* [VisualElement.visible](/engine/6000.5/script-reference/unityengine/uielements/visualelement/visible.md)
* [VisualElement.generateVisualContent](/engine/6000.5/script-reference/unityengine/uielements/visualelement/generatevisualcontent.md)
* [VisualElement.dataSource](/engine/6000.5/script-reference/unityengine/uielements/visualelement/datasource.md)
* [VisualElement.dataSourcePath](/engine/6000.5/script-reference/unityengine/uielements/visualelement/datasourcepath.md)
* [VisualElement.dataSourceType](/engine/6000.5/script-reference/unityengine/uielements/visualelement/datasourcetype.md)
* [VisualElement.experimental](/engine/6000.5/script-reference/unityengine/uielements/visualelement/experimental.md)
* [VisualElement.hierarchy](/engine/6000.5/script-reference/unityengine/uielements/visualelement/hierarchy-1.md)
* [VisualElement.parent](/engine/6000.5/script-reference/unityengine/uielements/visualelement/parent.md)
* [VisualElement.panel](/engine/6000.5/script-reference/unityengine/uielements/visualelement/panel.md)
* [VisualElement.contentContainer](/engine/6000.5/script-reference/unityengine/uielements/visualelement/contentcontainer.md)
* [VisualElement.visualTreeAssetSource](/engine/6000.5/script-reference/unityengine/uielements/visualelement/visualtreeassetsource.md)
* [VisualElement.this\[int\]](/engine/6000.5/script-reference/unityengine/uielements/visualelement/item.md)
* [VisualElement.childCount](/engine/6000.5/script-reference/unityengine/uielements/visualelement/childcount.md)
* [VisualElement.schedule](/engine/6000.5/script-reference/unityengine/uielements/visualelement/schedule.md)
* [VisualElement.style](/engine/6000.5/script-reference/unityengine/uielements/visualelement/style.md)
* [VisualElement.resolvedStyle](/engine/6000.5/script-reference/unityengine/uielements/visualelement/resolvedstyle.md)
* [VisualElement.customStyle](/engine/6000.5/script-reference/unityengine/uielements/visualelement/customstyle.md)
* [VisualElement.styleSheets](/engine/6000.5/script-reference/unityengine/uielements/visualelement/stylesheets.md)
* [VisualElement.tooltip](/engine/6000.5/script-reference/unityengine/uielements/visualelement/tooltip.md)
* [Focusable.Blur()](/engine/6000.5/script-reference/unityengine/uielements/focusable/blur.md)
* [Focusable.focusable](/engine/6000.5/script-reference/unityengine/uielements/focusable/focusable.md)
* [Focusable.tabIndex](/engine/6000.5/script-reference/unityengine/uielements/focusable/tabindex.md)
* [Focusable.delegatesFocus](/engine/6000.5/script-reference/unityengine/uielements/focusable/delegatesfocus.md)
* [CallbackEventHandler.RegisterCallback\<T>(EventCallback\<T>, TrickleDown)](/engine/6000.5/script-reference/unityengine/uielements/callbackeventhandler/registercallback.md)
* [CallbackEventHandler.RegisterCallbackOnce\<T>(EventCallback\<T>, TrickleDown)](/engine/6000.5/script-reference/unityengine/uielements/callbackeventhandler/registercallbackonce.md)
* [CallbackEventHandler.RegisterCallback\<T, U>(EventCallback\<T, T>, T, TrickleDown)](/engine/6000.5/script-reference/unityengine/uielements/callbackeventhandler/registercallback.md)
* [CallbackEventHandler.RegisterCallbackOnce\<T, U>(EventCallback\<T, T>, T, TrickleDown)](/engine/6000.5/script-reference/unityengine/uielements/callbackeventhandler/registercallbackonce.md)
* [CallbackEventHandler.RegisterCallback\<T>(EventCallback\<T>, CallbackOptions)](/engine/6000.5/script-reference/unityengine/uielements/callbackeventhandler/registercallback.md)
* [CallbackEventHandler.RegisterCallback\<T, U>(EventCallback\<T, T>, T, CallbackOptions)](/engine/6000.5/script-reference/unityengine/uielements/callbackeventhandler/registercallback.md)
* [CallbackEventHandler.UnregisterCallback\<T>(EventCallback\<T>, TrickleDown)](/engine/6000.5/script-reference/unityengine/uielements/callbackeventhandler/unregistercallback.md)
* [CallbackEventHandler.UnregisterCallback\<T>(EventCallback\<T>, CallbackOptions)](/engine/6000.5/script-reference/unityengine/uielements/callbackeventhandler/unregistercallback.md)
* [CallbackEventHandler.UnregisterCallback\<T, U>(EventCallback\<T, T>, TrickleDown)](/engine/6000.5/script-reference/unityengine/uielements/callbackeventhandler/unregistercallback.md)
* [CallbackEventHandler.UnregisterCallback\<T, U>(EventCallback\<T, T>, CallbackOptions)](/engine/6000.5/script-reference/unityengine/uielements/callbackeventhandler/unregistercallback.md)
* [CallbackEventHandler.UnregisterAllRemovableCallbacks()](/engine/6000.5/script-reference/unityengine/uielements/callbackeventhandler/unregisterallremovablecallbacks.md)
* [CallbackEventHandler.HasTrickleDownHandlers()](/engine/6000.5/script-reference/unityengine/uielements/callbackeventhandler/hastrickledownhandlers.md)
* [CallbackEventHandler.HasBubbleUpHandlers()](/engine/6000.5/script-reference/unityengine/uielements/callbackeventhandler/hasbubbleuphandlers.md)
* [CallbackEventHandler.HandleEventTrickleDown(EventBase)](/engine/6000.5/script-reference/unityengine/uielements/callbackeventhandler/handleeventtrickledown.md)
* [CallbackEventHandler.NotifyPropertyChanged(BindingId)](/engine/6000.5/script-reference/unityengine/uielements/callbackeventhandler/notifypropertychanged.md)
