# SelectionObserver Class

Namespace: [Qlik.Sense.Client](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Sense.Client.htm)  
Assembly: Qlik.Sense.Client.dll

The selection observer class provides an interface for inspecting the current set of selected field values for an app.

## Inheritance

* System.Object
  * [QixClassBase](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Engine.QixClassBase.htm)
    * [PropertyContainer](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Engine.PropertyContainer.htm)
      * [GenericObject](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Engine.GenericObject.htm)
        * SelectionObserver

## Syntax

```
public class SelectionObserver : GenericObject, ITransient, ISelectionObserver, IGenericObject, IPropertyContainer, IQixClassBase, IDisposable, IChangeNotifier
```

## Constructors

| Name | Description |
| --- | --- |
| [SelectionObserver(Int32)](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Sense.Client.SelectionObserver.-ctor.htm#Qlik_Sense_Client_SelectionObserver__ctor_System_Int32_) |  |

## Properties

| Name | Description |
| --- | --- |
| [Layout](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Sense.Client.SelectionObserver.Layout.htm#Qlik_Sense_Client_SelectionObserver_Layout) |  |
| [Properties](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Sense.Client.SelectionObserver.Properties.htm#Qlik_Sense_Client_SelectionObserver_Properties) |  |

## Methods

| Name | Description |
| --- | --- |
| [Dispose(Boolean)](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Sense.Client.SelectionObserver.Dispose.htm#Qlik_Sense_Client_SelectionObserver_Dispose_System_Boolean_) |  |
| [FieldHasSelections(String)](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Sense.Client.SelectionObserver.FieldHasSelections.htm#Qlik_Sense_Client_SelectionObserver_FieldHasSelections_System_String_) | Check if there are currently any selected values in the specified field. |
| [FieldHasSelectionsAsync(String)](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Sense.Client.SelectionObserver.FieldHasSelectionsAsync.htm#Qlik_Sense_Client_SelectionObserver_FieldHasSelectionsAsync_System_String_) | Check if there are currently any selected values in the specified field. |
| [GetAllSelectedValues(String, Int32)](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Sense.Client.SelectionObserver.GetAllSelectedValues.htm#Qlik_Sense_Client_SelectionObserver_GetAllSelectedValues_System_String_System_Int32_) | Get all selected values for the specified field. |
| [GetFieldSelectionCount(String)](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Sense.Client.SelectionObserver.GetFieldSelectionCount.htm#Qlik_Sense_Client_SelectionObserver_GetFieldSelectionCount_System_String_) | Get the number of selected values of the specified field. |
| [GetFieldSelectionCountAsync(String)](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Sense.Client.SelectionObserver.GetFieldSelectionCountAsync.htm#Qlik_Sense_Client_SelectionObserver_GetFieldSelectionCountAsync_System_String_) | Get the number of selected values of the specified field. |
| [GetLayoutAsync()](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Sense.Client.SelectionObserver.GetLayoutAsync.htm#Qlik_Sense_Client_SelectionObserver_GetLayoutAsync) |  |
| [GetNamesOfFieldsWithSelections()](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Sense.Client.SelectionObserver.GetNamesOfFieldsWithSelections.htm#Qlik_Sense_Client_SelectionObserver_GetNamesOfFieldsWithSelections) | Get the names of all fields that currently have any selected values. |
| [GetNamesOfFieldsWithSelectionsAsync()](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Sense.Client.SelectionObserver.GetNamesOfFieldsWithSelectionsAsync.htm#Qlik_Sense_Client_SelectionObserver_GetNamesOfFieldsWithSelectionsAsync) | Get the names of all fields that currently have any selected values. |
| [GetNumberOfFieldsWithSelections()](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Sense.Client.SelectionObserver.GetNumberOfFieldsWithSelections.htm#Qlik_Sense_Client_SelectionObserver_GetNumberOfFieldsWithSelections) | Check how many fields that currently have any selected values. |
| [GetNumberOfFieldsWithSelectionsAsync()](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Sense.Client.SelectionObserver.GetNumberOfFieldsWithSelectionsAsync.htm#Qlik_Sense_Client_SelectionObserver_GetNumberOfFieldsWithSelectionsAsync) | Check how many fields that currently have any selected values. |
| [GetPropertiesAsync()](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Sense.Client.SelectionObserver.GetPropertiesAsync.htm#Qlik_Sense_Client_SelectionObserver_GetPropertiesAsync) |  |
| [GetSelectionObserver(IApp, String)](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Sense.Client.SelectionObserver.GetSelectionObserver.htm#Qlik_Sense_Client_SelectionObserver_GetSelectionObserver_Qlik_Engine_IApp_System_String_) | Create a SelectionObserver instance. |
| [GetSelectionObserverAsync(IApp, String)](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Sense.Client.SelectionObserver.GetSelectionObserverAsync.htm#Qlik_Sense_Client_SelectionObserver_GetSelectionObserverAsync_Qlik_Engine_IApp_System_String_) | Create a SelectionObserver instance. |
| [GetSelectionPager(String)](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Sense.Client.SelectionObserver.GetSelectionPager.htm#Qlik_Sense_Client_SelectionObserver_GetSelectionPager_System_String_) | Get a data pager for paging across the selected value of the field. |
| [GetSelectionPagerAsync(String)](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Sense.Client.SelectionObserver.GetSelectionPagerAsync.htm#Qlik_Sense_Client_SelectionObserver_GetSelectionPagerAsync_System_String_) | Get a data pager for paging across the selected value of the field. |
| [GetSelectionState()](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Sense.Client.SelectionObserver.GetSelectionState.htm#Qlik_Sense_Client_SelectionObserver_GetSelectionState) | Get the state for which the object currently observes selections. |
| [GetSelectionStateAsync()](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Sense.Client.SelectionObserver.GetSelectionStateAsync.htm#Qlik_Sense_Client_SelectionObserver_GetSelectionStateAsync) | Get the state for which the object currently observes selections. |
| [HasAnySelections()](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Sense.Client.SelectionObserver.HasAnySelections.htm#Qlik_Sense_Client_SelectionObserver_HasAnySelections) | Check if there are currently any selected values in any fields. |
| [HasAnySelectionsAsync()](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Sense.Client.SelectionObserver.HasAnySelectionsAsync.htm#Qlik_Sense_Client_SelectionObserver_HasAnySelectionsAsync) | Check if there are currently any selected values in any fields. |
| [OnGetLayoutAsync(Response)](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Sense.Client.SelectionObserver.OnGetLayoutAsync.htm#Qlik_Sense_Client_SelectionObserver_OnGetLayoutAsync_Qlik_Engine_Communication_IO_Response_) |  |
| [OnGetMasterObjectAsync(Response)](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Sense.Client.SelectionObserver.OnGetMasterObjectAsync.htm#Qlik_Sense_Client_SelectionObserver_OnGetMasterObjectAsync_Qlik_Engine_Communication_IO_Response_) |  |
| [OnGetPropertiesAsync(Response)](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Sense.Client.SelectionObserver.OnGetPropertiesAsync.htm#Qlik_Sense_Client_SelectionObserver_OnGetPropertiesAsync_Qlik_Engine_Communication_IO_Response_) |  |
| [SetSelectionState(String)](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Sense.Client.SelectionObserver.SetSelectionState.htm#Qlik_Sense_Client_SelectionObserver_SetSelectionState_System_String_) | Set the state for which to observe selections. |
| [SetSelectionStateAsync(String)](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Sense.Client.SelectionObserver.SetSelectionStateAsync.htm#Qlik_Sense_Client_SelectionObserver_SetSelectionStateAsync_System_String_) | Set the state for which to observe selections. |

### Extension Methods

[UrlExtensions.SingleUrl(IGenericObject, VisualizationOptions, CallbackOptions)](https://help.qlik.com/en-US/sense-developer/November2024/Subsystems/NetSDKAPIref/Content/Qlik.Engine.Extensions.UrlExtensions.SingleUrl.htm#Qlik_Engine_Extensions_UrlExtensions_SingleUrl_Qlik_Engine_IGenericObject_Qlik_Engine_Extensions_VisualizationOptions_Qlik_Engine_Extensions_CallbackOptions_)