    

 ## On this page

  

 

 # Class PickerGeneral

 Last update: 09.03.2026 

<a id="VM_Managed_Picker_Core_PickerGeneral"></a>

Namespace: [VM.Managed.Picker.Core](VM.Managed.Picker.Core.md)  
Assembly: VMAppCore.dll

This class is to represent the general entity picker.

```csharp
public abstract class PickerGeneral : PickerBase

```

#### Inheritance

object ← [PickerBase](VM.Managed.Picker.Core.PickerBase.md) ← [PickerGeneral](VM.Managed.Picker.Core.PickerGeneral.md)

#### Inherited Members

[PickerBase.raise\_CustomFilterEvent(object, FilterArgs)](VM.Managed.Picker.Core.PickerBase.md#VM_Managed_Picker_Core_PickerBase_raise_CustomFilterEvent_System_Object_VM_Managed_Picker_Core_FilterArgs_), [PickerBase.Pick(bool)](VM.Managed.Picker.Core.PickerBase.md#VM_Managed_Picker_Core_PickerBase_Pick_System_Boolean_), [PickerBase.PickWithStartSignal(bool, ManualResetEvent)](VM.Managed.Picker.Core.PickerBase.md#VM_Managed_Picker_Core_PickerBase_PickWithStartSignal_System_Boolean_System_Threading_ManualResetEvent_), [PickerBase.Abort()](VM.Managed.Picker.Core.PickerBase.md#VM_Managed_Picker_Core_PickerBase_Abort), [PickerBase.GetPickerInfo()](VM.Managed.Picker.Core.PickerBase.md#VM_Managed_Picker_Core_PickerBase_GetPickerInfo), [PickerBase.GetValidResultXml(string)](VM.Managed.Picker.Core.PickerBase.md#VM_Managed_Picker_Core_PickerBase_GetValidResultXml_System_String_), [PickerBase.GetResultXmlFromKey(UIntPtr)](VM.Managed.Picker.Core.PickerBase.md#VM_Managed_Picker_Core_PickerBase_GetResultXmlFromKey_System_UIntPtr_), [PickerBase.GetChangeNoneParametricXml(string)](VM.Managed.Picker.Core.PickerBase.md#VM_Managed_Picker_Core_PickerBase_GetChangeNoneParametricXml_System_String_), [PickerBase.Filtering(UIntPtr)](VM.Managed.Picker.Core.PickerBase.md#VM_Managed_Picker_Core_PickerBase_Filtering_System_UIntPtr_), [PickerBase.FilteringVMPID(\_VM\_ID)](VM.Managed.Picker.Core.PickerBase.md#VM_Managed_Picker_Core_PickerBase_FilteringVMPID__VM_ID_), [PickerBase.FilteringAnother(UIntPtr)](VM.Managed.Picker.Core.PickerBase.md#VM_Managed_Picker_Core_PickerBase_FilteringAnother_System_UIntPtr_), [PickerBase.FilteringReference(UIntPtr, UIntPtr)](VM.Managed.Picker.Core.PickerBase.md#VM_Managed_Picker_Core_PickerBase_FilteringReference_System_UIntPtr_System_UIntPtr_), [PickerBase.Highlight(bool)](VM.Managed.Picker.Core.PickerBase.md#VM_Managed_Picker_Core_PickerBase_Highlight_System_Boolean_), [PickerBase.GetAdjacentPatch(double, List&lt;int&gt;)](VM.Managed.Picker.Core.PickerBase.md#VM_Managed_Picker_Core_PickerBase_GetAdjacentPatch_System_Double_System_Collections_Generic_List_System_Int32__), [PickerBase.UseEntityFiltering()](VM.Managed.Picker.Core.PickerBase.md#VM_Managed_Picker_Core_PickerBase_UseEntityFiltering), [PickerBase.SetResultImpl(ref string, bool)](VM.Managed.Picker.Core.PickerBase.md#VM_Managed_Picker_Core_PickerBase_SetResultImpl_System_String__System_Boolean_), [PickerBase.UpdateDisplay()](VM.Managed.Picker.Core.PickerBase.md#VM_Managed_Picker_Core_PickerBase_UpdateDisplay), [PickerBase.ActiveDocument](VM.Managed.Picker.Core.PickerBase.md#VM_Managed_Picker_Core_PickerBase_ActiveDocument), [PickerBase.IsOnlyResultXml](VM.Managed.Picker.Core.PickerBase.md#VM_Managed_Picker_Core_PickerBase_IsOnlyResultXml), [PickerBase.IsReference](VM.Managed.Picker.Core.PickerBase.md#VM_Managed_Picker_Core_PickerBase_IsReference), [PickerBase.SymmetricType](VM.Managed.Picker.Core.PickerBase.md#VM_Managed_Picker_Core_PickerBase_SymmetricType), [PickerBase.ResultXml](VM.Managed.Picker.Core.PickerBase.md#VM_Managed_Picker_Core_PickerBase_ResultXml), [PickerBase.Result](VM.Managed.Picker.Core.PickerBase.md#VM_Managed_Picker_Core_PickerBase_Result), [PickerBase.CustomFilterEvent](VM.Managed.Picker.Core.PickerBase.md#VM_Managed_Picker_Core_PickerBase_CustomFilterEvent)

#### Extension Methods

[LinkPropertyItemCache.GetLinkProperties(object, LinkPropertyType)](VM.Models.Pre.Cache.LinkPropertyItemCache.md#VM_Models_Pre_Cache_LinkPropertyItemCache_GetLinkProperties_System_Object_VM_Models_Pre_LinkPropertyType_), [LinkPropertyItemCache.GetLinkPropertiesAndValues(object, LinkPropertyType)](VM.Models.Pre.Cache.LinkPropertyItemCache.md#VM_Models_Pre_Cache_LinkPropertyItemCache_GetLinkPropertiesAndValues_System_Object_VM_Models_Pre_LinkPropertyType_), [LinkPropertyItemCache.GetLinkedObjects&lt;T&gt;(object, LinkPropertyType)](VM.Models.Pre.Cache.LinkPropertyItemCache.md#VM_Models_Pre_Cache_LinkPropertyItemCache_GetLinkedObjects__1_System_Object_VM_Models_Pre_LinkPropertyType_)

## Constructors

### <a id="VM_Managed_Picker_Core_PickerGeneral__ctor_System_Collections_Generic_ICollection_System_Type__"></a> PickerGeneral(ICollection&lt;Type&gt;)

```csharp
public PickerGeneral(ICollection<Type> arTypes)

```

#### Parameters

`arTypes` ICollection&lt;Type&gt;

### <a id="VM_Managed_Picker_Core_PickerGeneral__ctor_System_Type_System_Boolean_"></a> PickerGeneral(Type, bool)

Initializes a new instance of the  class

```csharp
public PickerGeneral(Type type, bool bIsInterface)

```

#### Parameters

`type` Type

The type of entity for pick.

`bIsInterface` bool

Whether interface or not.

## Properties

### <a id="VM_Managed_Picker_Core_PickerGeneral_AllowChildSubsystem"></a> AllowChildSubsystem

Get the flag of picking the reference objects.

```csharp
public bool AllowChildSubsystem { get; set; }

```

#### Property Value

bool

### <a id="VM_Managed_Picker_Core_PickerGeneral_PickableTypes"></a> PickableTypes

Get array of pickable type.

```csharp
public Type[] PickableTypes { get; }

```

#### Property Value

Type\[\]

## Methods

### <a id="VM_Managed_Picker_Core_PickerGeneral_ConvertKeyToInstanceContainerImpl_VM_Managed_ObjectBase_"></a> ConvertKeyToInstanceContainerImpl(ObjectBase)

```csharp
protected abstract UIntPtr ConvertKeyToInstanceContainerImpl(ObjectBase obj)

```

#### Parameters

`obj` [ObjectBase](VM.Managed.ObjectBase.md)

#### Returns

UIntPtr

### <a id="VM_Managed_Picker_Core_PickerGeneral_Filtering_System_UIntPtr_"></a> Filtering(UIntPtr)

Filtering to not proper object.

```csharp
public override bool Filtering(UIntPtr pTarget)

```

#### Parameters

`pTarget` UIntPtr

Filtering target.

#### Returns

bool

`true` if success; otherwise, `false`.

### <a id="VM_Managed_Picker_Core_PickerGeneral_FilteringReference_System_UIntPtr_System_UIntPtr_"></a> FilteringReference(UIntPtr, UIntPtr)

Filtering to not proper object about special target into owner.

```csharp
public override bool FilteringReference(UIntPtr pOwner, UIntPtr pTarget)

```

#### Parameters

`pOwner` UIntPtr

Filtering owner of target.

`pTarget` UIntPtr

Filtering target.

#### Returns

bool

`true` if success; otherwise, `false`.

### <a id="VM_Managed_Picker_Core_PickerGeneral_GetBodyImpl_System_UIntPtr_System_Boolean_"></a> GetBodyImpl(UIntPtr, bool)

```csharp
protected abstract ObjectBase GetBodyImpl(UIntPtr pKey, bool bIgnoreMarker)

```

#### Parameters

`pKey` UIntPtr

`bIgnoreMarker` bool

#### Returns

[ObjectBase](VM.Managed.ObjectBase.md)

### <a id="VM_Managed_Picker_Core_PickerGeneral_GetPickerInfo"></a> GetPickerInfo()

Gets information of picking type.

```csharp
public override string GetPickerInfo()

```

#### Returns

string

### <a id="VM_Managed_Picker_Core_PickerGeneral_GetResultXmlFromKey_System_UIntPtr_"></a> GetResultXmlFromKey(UIntPtr)

Get valid result xml according to picker key of core.

```csharp
public override string GetResultXmlFromKey(UIntPtr key)

```

#### Parameters

`key` UIntPtr

Picking destination key.

#### Returns

string

The valid result xml.

### <a id="VM_Managed_Picker_Core_PickerGeneral_Highlight_System_Boolean_"></a> Highlight(bool)

Picking highlight to filtered target.

```csharp
public override void Highlight(bool bHighlight)

```

#### Parameters

`bHighlight` bool

If set to `ture` is highlight; otherwise, `false` isn't highlight.

### <a id="VM_Managed_Picker_Core_PickerGeneral_HighlightCurveset_VM_Managed_ObjectBase_System_Boolean_"></a> HighlightCurveset(ObjectBase, bool)

```csharp
protected void HighlightCurveset(ObjectBase obj, bool bHighlight)

```

#### Parameters

`obj` [ObjectBase](VM.Managed.ObjectBase.md)

`bHighlight` bool

### <a id="VM_Managed_Picker_Core_PickerGeneral_HighlightFaceset_VM_Managed_ObjectBase_System_Boolean_"></a> HighlightFaceset(ObjectBase, bool)

```csharp
protected void HighlightFaceset(ObjectBase obj, bool bHighlight)

```

#### Parameters

`obj` [ObjectBase](VM.Managed.ObjectBase.md)

`bHighlight` bool

### <a id="VM_Managed_Picker_Core_PickerGeneral_HighlightGeometry_VM_Managed_ObjectBase_System_Boolean_"></a> HighlightGeometry(ObjectBase, bool)

```csharp
protected void HighlightGeometry(ObjectBase obj, bool bHighlight)

```

#### Parameters

`obj` [ObjectBase](VM.Managed.ObjectBase.md)

`bHighlight` bool

### <a id="VM_Managed_Picker_Core_PickerGeneral_HighlightImpl_VM_Managed_ObjectBase_System_Boolean_"></a> HighlightImpl(ObjectBase, bool)

```csharp
protected abstract bool HighlightImpl(ObjectBase obj, bool bHighlight)

```

#### Parameters

`obj` [ObjectBase](VM.Managed.ObjectBase.md)

`bHighlight` bool

#### Returns

bool

### <a id="VM_Managed_Picker_Core_PickerGeneral_HighlightInstanceContainer_VM_Managed_ObjectBase_System_Boolean_"></a> HighlightInstanceContainer(ObjectBase, bool)

```csharp
protected void HighlightInstanceContainer(ObjectBase obj, bool bHighlight)

```

#### Parameters

`obj` [ObjectBase](VM.Managed.ObjectBase.md)

`bHighlight` bool

### <a id="VM_Managed_Picker_Core_PickerGeneral_HighlightOpenDesigner_VM_Managed_ObjectBase_System_Boolean_"></a> HighlightOpenDesigner(ObjectBase, bool)

```csharp
protected void HighlightOpenDesigner(ObjectBase obj, bool bHighlight)

```

#### Parameters

`obj` [ObjectBase](VM.Managed.ObjectBase.md)

`bHighlight` bool

### <a id="VM_Managed_Picker_Core_PickerGeneral_HighlightReferenceFaceset_VM_Managed_ObjectBase_System_Boolean_System_Boolean_"></a> HighlightReferenceFaceset(ObjectBase, bool, bool)

```csharp
protected void HighlightReferenceFaceset(ObjectBase obj, bool bHighlight, bool bUpdate)

```

#### Parameters

`obj` [ObjectBase](VM.Managed.ObjectBase.md)

`bHighlight` bool

`bUpdate` bool

### <a id="VM_Managed_Picker_Core_PickerGeneral_IsAcceptedPickAndModifiedTargetObject_VM_Managed_ObjectBase__"></a> IsAcceptedPickAndModifiedTargetObject(ref ObjectBase)

Picked object should be include setted interface.

```csharp
public bool IsAcceptedPickAndModifiedTargetObject(ref ObjectBase obj)

```

#### Parameters

`obj` [ObjectBase](VM.Managed.ObjectBase.md)

The picked object.

#### Returns

bool

`true` if accepted; otherwise, `false`.

### <a id="VM_Managed_Picker_Core_PickerGeneral_SetResultImpl_System_String__System_Boolean_"></a> SetResultImpl(ref string, bool)

Sets the result for picking.

```csharp
protected override bool SetResultImpl(ref string strXml, bool bXmlOnly)

```

#### Parameters

`strXml` string

The picked data.

`bXmlOnly` bool

If it is true, skip the result setting.

#### Returns

bool

`true` if success; otherwise, `false`.