# PropertyContainer Class

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

Instances of this class represent objects known to the Qlik Sense Engine that follow the properties/layout pattern.

## Inheritance

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

      [](https://help.qlik.com/en-US/sense-developer/Subsystems/NetSDKAPIref/Content/Qlik.Engine.PropertyContainer.htm)
      #### Derived Classes
      * [GenericBookmark](https://help.qlik.com/en-US/sense-developer/November2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.GenericBookmark.htm)
      * [GenericDimension](https://help.qlik.com/en-US/sense-developer/November2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.GenericDimension.htm)
      * [GenericMeasure](https://help.qlik.com/en-US/sense-developer/November2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.GenericMeasure.htm)
      * [GenericObject](https://help.qlik.com/en-US/sense-developer/November2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.GenericObject.htm)
      * [GenericVariable](https://help.qlik.com/en-US/sense-developer/November2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.GenericVariable.htm)

## Syntax

```
public class PropertyContainer : QixClassBase, IPropertyContainer, IQixClassBase, IDisposable, IChangeNotifier
```

## Constructors

| Name | Description |
| --- | --- |
| [PropertyContainer(Int32, String)](https://help.qlik.com/en-US/sense-developer/November2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.PropertyContainer.-ctor.htm#Qlik_Engine_PropertyContainer__ctor_System_Int32_System_String_) | Create a C# representation of a qix object with properties and layout functionality. |

## Fields

| Name | Description |
| --- | --- |
| [LayoutMode](https://help.qlik.com/en-US/sense-developer/November2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.PropertyContainer.LayoutMode.htm) | True if layout is not suspended. |

## Properties

| Name | Description |
| --- | --- |
| [Layout](https://help.qlik.com/en-US/sense-developer/November2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.PropertyContainer.Layout.htm#Qlik_Engine_PropertyContainer_Layout) | The calculated Layout based on Properties \* Data \* SelectionState |
| [Properties](https://help.qlik.com/en-US/sense-developer/November2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.PropertyContainer.Properties.htm#Qlik_Engine_PropertyContainer_Properties) | Property for accessing properties structure. The property maps to the methods GetProperties and SetProperties. |
| [ShouldDelayChange](https://help.qlik.com/en-US/sense-developer/November2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.PropertyContainer.ShouldDelayChange.htm#Qlik_Engine_PropertyContainer_ShouldDelayChange) | True if layout is suspended. |
| [SuspendedLayout](https://help.qlik.com/en-US/sense-developer/November2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.PropertyContainer.SuspendedLayout.htm#Qlik_Engine_PropertyContainer_SuspendedLayout) | Stops incoming changes from altering the object, resumes normal behavior after disposed. |

## Methods

| Name | Description |
| --- | --- |
| [GetLayout()](https://help.qlik.com/en-US/sense-developer/November2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.PropertyContainer.GetLayout.htm#Qlik_Engine_PropertyContainer_GetLayout) | Get the layout structure of the Qix entity. |
| [GetLayoutAsync()](https://help.qlik.com/en-US/sense-developer/November2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.PropertyContainer.GetLayoutAsync.htm#Qlik_Engine_PropertyContainer_GetLayoutAsync) | Get the layout structure of the Qix entity. |
| [GetLayoutAsync(AsyncHandle)](https://help.qlik.com/en-US/sense-developer/November2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.PropertyContainer.GetLayoutAsync.htm#Qlik_Engine_PropertyContainer_GetLayoutAsync_Qlik_Engine_AsyncHandle_) | Get the layout structure of the Qix entity. |
| [GetLayoutAsync<T>(AsyncHandle, Func<Response, T>)](https://help.qlik.com/en-US/sense-developer/November2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.PropertyContainer.GetLayoutAsync.htm#Qlik_Engine_PropertyContainer_GetLayoutAsync__1_Qlik_Engine_AsyncHandle_System_Func_Qlik_Engine_Communication_IO_Response___0__) | Get the layout structure of the Qix entity. |
| [GetProperties()](https://help.qlik.com/en-US/sense-developer/November2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.PropertyContainer.GetProperties.htm#Qlik_Engine_PropertyContainer_GetProperties) | Get the properties structure of the Qix entity. |
| [GetPropertiesAsync()](https://help.qlik.com/en-US/sense-developer/November2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.PropertyContainer.GetPropertiesAsync.htm#Qlik_Engine_PropertyContainer_GetPropertiesAsync) | Get the properties structure of the Qix entity. |
| [GetPropertiesAsync(AsyncHandle)](https://help.qlik.com/en-US/sense-developer/November2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.PropertyContainer.GetPropertiesAsync.htm#Qlik_Engine_PropertyContainer_GetPropertiesAsync_Qlik_Engine_AsyncHandle_) | Get the properties structure of the Qix entity. |
| [GetPropertiesAsync<T>(AsyncHandle, Func<Response, T>)](https://help.qlik.com/en-US/sense-developer/November2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.PropertyContainer.GetPropertiesAsync.htm#Qlik_Engine_PropertyContainer_GetPropertiesAsync__1_Qlik_Engine_AsyncHandle_System_Func_Qlik_Engine_Communication_IO_Response___0__) | Get the properties structure of the Qix entity. |
| [OnDirty()](https://help.qlik.com/en-US/sense-developer/November2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.PropertyContainer.OnDirty.htm#Qlik_Engine_PropertyContainer_OnDirty) | Invokes the Changed Event with full dirty handling if possible |
| [OnGetLayoutAsync<T>(Response)](https://help.qlik.com/en-US/sense-developer/November2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.PropertyContainer.OnGetLayoutAsync.htm#Qlik_Engine_PropertyContainer_OnGetLayoutAsync__1_Qlik_Engine_Communication_IO_Response_) | Generic callback method for deserializing layouts. |
| [OnGetPropertiesAsync<T>(Response)](https://help.qlik.com/en-US/sense-developer/November2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.PropertyContainer.OnGetPropertiesAsync.htm#Qlik_Engine_PropertyContainer_OnGetPropertiesAsync__1_Qlik_Engine_Communication_IO_Response_) | Generic callback method for deserializing properties. |
| [ResumeLayout()](https://help.qlik.com/en-US/sense-developer/November2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.PropertyContainer.ResumeLayout.htm#Qlik_Engine_PropertyContainer_ResumeLayout) | Resume layout updates. The OnChanged callback will not be executed while layout is suspended. |
| [SetProperties(AbstractStructure)](https://help.qlik.com/en-US/sense-developer/November2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.PropertyContainer.SetProperties.htm#Qlik_Engine_PropertyContainer_SetProperties_Qlik_Engine_AbstractStructure_) | Set properties for the Qix entity. |
| [SetPropertiesAsync(AbstractStructure)](https://help.qlik.com/en-US/sense-developer/November2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.PropertyContainer.SetPropertiesAsync.htm#Qlik_Engine_PropertyContainer_SetPropertiesAsync_Qlik_Engine_AbstractStructure_) | Set properties for the Qix entity. |
| [SetPropertiesAsync(AsyncHandle, AbstractStructure)](https://help.qlik.com/en-US/sense-developer/November2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.PropertyContainer.SetPropertiesAsync.htm#Qlik_Engine_PropertyContainer_SetPropertiesAsync_Qlik_Engine_AsyncHandle_Qlik_Engine_AbstractStructure_) | Set properties for the Qix entity. |
| [SuspendLayout()](https://help.qlik.com/en-US/sense-developer/November2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.PropertyContainer.SuspendLayout.htm#Qlik_Engine_PropertyContainer_SuspendLayout) | Suspend layout updates. The OnChanged callback will not be executed while layout is suspended. |