# OpcDialogConditionNode Members

> Reference: Defines a condition node which represents itself as a dialog.

<dl class="api-definition">
<dt>Type</dt>
<dd><a href="./">OpcDialogConditionNode</a></dd>
<dt>Namespace</dt>
<dd><a href="../namespaces/opc.uafx">Opc.UaFx</a></dd>
<dt>Assembly</dt>
<dd>Opc.UaFx.Advanced.dll</dd>
<dt>Package</dt>
<dd>Opc.UaFx.Advanced v2.59.0</dd>
</dl>

Inherits members from [OpcConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcconditionnode/members), [OpcEventNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opceventnode/members), [OpcObjectNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcobjectnode/members), [OpcInstanceNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcinstancenode/members), [OpcNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnode/members).

## Constructors

### OpcDialogConditionNode

<span class="api-meta">6 overloads</span>

| Overload | Description |
|---|---|
| [OpcDialogConditionNode(OpcName)](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/members#opcdialogconditionnode-opc-uafx-opcname) | Initializes a new instance of the [OpcDialogConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/) class accessible by the `name` specified. |
| [OpcDialogConditionNode(OpcName, OpcNodeId)](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/members#opcdialogconditionnode-opc-uafx-opcname-opc-uafx-opcnodeid) | Initializes a new instance of the [OpcDialogConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/) class accessible by the `name` and `id` specified. |
| [OpcDialogConditionNode(IOpcNode, OpcName)](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/members#opcdialogconditionnode-opc-uafx-iopcnode-opc-uafx-opcname) | Initializes a new instance of the [OpcDialogConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/) class accessible by the `name` specified as a child node of the `parent` node given. |
| [OpcDialogConditionNode(IOpcNode, OpcName, OpcNodeId)](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/members#opcdialogconditionnode-opc-uafx-iopcnode-opc-uafx-opcname-opc-uafx-opcnodeid) | Initializes a new instance of the [OpcDialogConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/) class accessible by the `name` and `id` specified as a child node of the `parent` node given. |
| [OpcDialogConditionNode(DialogConditionState)](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/members#opcdialogconditionnode-opc-ua-dialogconditionstate)<span class="api-meta">protected · since v2.50</span> | Initializes a new instance of the [OpcDialogConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/) class using the `content` as the instance to wrap. |
| [OpcDialogConditionNode(DialogConditionState, OpcNodeModel)](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/members#opcdialogconditionnode-opc-ua-dialogconditionstate-opc-uafx-opcnodemodel)<span class="api-meta">protected · since v2.50</span> | Initializes a new instance of the [OpcDialogConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/) class using the `content` as the instance to wrap. |

#### OpcDialogConditionNode(OpcName)

Initializes a new instance of the [OpcDialogConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/) class accessible by the `name` specified.

<div class="api-signature" data-lang="csharp">

```csharp
public OpcDialogConditionNode(OpcName name)
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public Sub New(name As OpcName)
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `name` | [OpcName](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcname/) | The [OpcName](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcname/) through that the new dialog condition node can be accessed. |

#### OpcDialogConditionNode(OpcName, OpcNodeId)

Initializes a new instance of the [OpcDialogConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/) class accessible by the `name` and `id` specified.

<div class="api-signature" data-lang="csharp">

```csharp
public OpcDialogConditionNode(OpcName name, OpcNodeId id)
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public Sub New(name As OpcName, id As OpcNodeId)
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `name` | [OpcName](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcname/) | The [OpcName](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcname/) through that the new dialog condition node can be accessed. |
| `id` | [OpcNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/) | The [OpcNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/) through that the new dialog condition node can be identified and accessed. |

#### OpcDialogConditionNode(IOpcNode, OpcName)

Initializes a new instance of the [OpcDialogConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/) class accessible by the `name` specified as a child node of the `parent` node given.

<div class="api-signature" data-lang="csharp">

```csharp
public OpcDialogConditionNode(IOpcNode parent, OpcName name)
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public Sub New(parent As IOpcNode, name As OpcName)
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `parent` | [IOpcNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.iopcnode/) | The [IOpcNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.iopcnode/) used as the parent node or a null reference (Nothing in Visual Basic) in the case there is no parent node available. |
| `name` | [OpcName](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcname/) | The [OpcName](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcname/) through that the new dialog condition node can be accessed. |

#### OpcDialogConditionNode(IOpcNode, OpcName, OpcNodeId)

Initializes a new instance of the [OpcDialogConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/) class accessible by the `name` and `id` specified as a child node of the `parent` node given.

<div class="api-signature" data-lang="csharp">

```csharp
public OpcDialogConditionNode(IOpcNode parent, OpcName name, OpcNodeId id)
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public Sub New(parent As IOpcNode, name As OpcName, id As OpcNodeId)
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `parent` | [IOpcNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.iopcnode/) | The [IOpcNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.iopcnode/) used as the parent node or a null reference (Nothing in Visual Basic) in the case there is no parent node available. |
| `name` | [OpcName](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcname/) | The [OpcName](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcname/) through that the new dialog condition node can be accessed. |
| `id` | [OpcNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/) | The [OpcNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/) through that the new dialog condition node can be identified and accessed. |

#### OpcDialogConditionNode(DialogConditionState)

<span class="api-meta">protected · since v2.50</span>

Initializes a new instance of the [OpcDialogConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/) class using the `content` as the instance to wrap.

<div class="api-signature" data-lang="csharp">

```csharp
protected OpcDialogConditionNode(DialogConditionState content)
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Protected Sub New(content As DialogConditionState)
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `content` | <abbr title="OPC Foundation stack type, not documented here: Opc.Ua.DialogConditionState">DialogConditionState</abbr> | The <abbr title="OPC Foundation stack type, not documented here: Opc.Ua.DialogConditionState">DialogConditionState</abbr> to wrap. |

**Exceptions**

| Exception | Condition |
|---|---|
| [ArgumentNullException](https://learn.microsoft.com/dotnet/api/system.argumentnullexception) | The `content` is a null reference (Nothing in Visual Basic). |

#### OpcDialogConditionNode(DialogConditionState, OpcNodeModel)

<span class="api-meta">protected · since v2.50</span>

Initializes a new instance of the [OpcDialogConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/) class using the `content` as the instance to wrap.

<div class="api-signature" data-lang="csharp">

```csharp
protected OpcDialogConditionNode(
    DialogConditionState content,
    OpcNodeModel model)
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Protected Sub New(content As DialogConditionState, model As OpcNodeModel)
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `content` | <abbr title="OPC Foundation stack type, not documented here: Opc.Ua.DialogConditionState">DialogConditionState</abbr> | The <abbr title="OPC Foundation stack type, not documented here: Opc.Ua.DialogConditionState">DialogConditionState</abbr> to wrap. |
| `model` | [OpcNodeModel](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodemodel/) | The [OpcNodeModel](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodemodel/) which defines the modelling directives for the new node or a null reference (Nothing in Visual Basic) if there are no directives are to be applied to the node. |

**Exceptions**

| Exception | Condition |
|---|---|
| [ArgumentNullException](https://learn.microsoft.com/dotnet/api/system.argumentnullexception) | The `content` is a null reference (Nothing in Visual Basic). |

## Properties

### CancelResponse

Gets or sets a value which defines the index of the response in the [ResponseOptions](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/members#responseoptions) array that will cause the dialog to go into the inactive state without proceeding with the operation described by the prompt.

<div class="api-signature" data-lang="csharp">

```csharp
public int CancelResponse { get; set; }
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public Property CancelResponse As Integer
```

</div>

**Property value**

[Int32](https://learn.microsoft.com/dotnet/api/system.int32)

The value allows a client to identify the Cancel option if a special handling for this option is available. If no Cancel option is available the value is -1.

### CancelResponseNode

Gets the [OpcPropertyNode&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcpropertynode-1/) of the [CancelResponse](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/members#cancelresponse) property.

<div class="api-signature" data-lang="csharp">

```csharp
public OpcPropertyNode<int> CancelResponseNode { get; }
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public ReadOnly Property CancelResponseNode As OpcPropertyNode(Of Integer)
```

</div>

**Property value**

[OpcPropertyNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcpropertynode-1/)&lt;[Int32](https://learn.microsoft.com/dotnet/api/system.int32)&gt;

An instance of the [OpcPropertyNode&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcpropertynode-1/) class.

### DefaultResponse

Gets or sets a value which identifies the response option that should be shown as default to the user.

<div class="api-signature" data-lang="csharp">

```csharp
public int DefaultResponse { get; set; }
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public Property DefaultResponse As Integer
```

</div>

**Property value**

[Int32](https://learn.microsoft.com/dotnet/api/system.int32)

The index to an item in the [ResponseOptions](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/members#responseoptions) array. If no response option is the default, the value is -1.

### DefaultResponseNode

Gets the [OpcPropertyNode&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcpropertynode-1/) of the [DefaultResponse](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/members#defaultresponse) property.

<div class="api-signature" data-lang="csharp">

```csharp
public OpcPropertyNode<int> DefaultResponseNode { get; }
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public ReadOnly Property DefaultResponseNode As OpcPropertyNode(Of Integer)
```

</div>

**Property value**

[OpcPropertyNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcpropertynode-1/)&lt;[Int32](https://learn.microsoft.com/dotnet/api/system.int32)&gt;

An instance of the [OpcPropertyNode&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcpropertynode-1/) class.

### DefaultTypeDefinitionId

<span class="api-meta">protected · override</span>

Gets the default identifier which identifies the node that defines the underlying node type from that this [OpcInstanceNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcinstancenode/) has been created.

<div class="api-signature" data-lang="csharp">

```csharp
protected override OpcNodeId DefaultTypeDefinitionId { get; }
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Protected Overrides ReadOnly Property DefaultTypeDefinitionId As OpcNodeId
```

</div>

**Property value**

[OpcNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/)

The [OpcNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/) of the type node from that this [OpcInstanceNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcinstancenode/) has been created from. These type node defines the typical structure of an instance node of its type definition. If there exists no specific type definition node a null reference (Nothing in Visual Basic).

**Overrides**

[DefaultTypeDefinitionId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcconditionnode/members#defaulttypedefinitionid)

### IsActive

Gets a value indicating whether the dialog is active and is waiting for a response.

<div class="api-signature" data-lang="csharp">

```csharp
public bool IsActive { get; }
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public ReadOnly Property IsActive As Boolean
```

</div>

**Property value**

[Boolean](https://learn.microsoft.com/dotnet/api/system.boolean)

A value indicating whether the dialog is active and is waiting for a response.

**Remarks**

The value is false after the node has been created: the DialogState starts inactive, so a new dialog condition is not waiting for a response yet. [ActivateDialog](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.server.opcconditionnodeextension/members#activatedialog) makes it active. [RespondDialog](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.server.opcconditionnodeextension/members#responddialog) and [Respond](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/members#respond) make it inactive again.

### IsActiveNode

Gets the [OpcTwoStateVariableNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opctwostatevariablenode/) of the [IsActive](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/members#isactive) property.

<div class="api-signature" data-lang="csharp">

```csharp
public OpcTwoStateVariableNode IsActiveNode { get; }
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public ReadOnly Property IsActiveNode As OpcTwoStateVariableNode
```

</div>

**Property value**

[OpcTwoStateVariableNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opctwostatevariablenode/)

An instance of the [OpcTwoStateVariableNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opctwostatevariablenode/) class.

### LastResponse

Gets or sets a value which defines the last response provided by a client in the respond method.

<div class="api-signature" data-lang="csharp">

```csharp
public int LastResponse { get; set; }
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public Property LastResponse As Integer
```

</div>

**Property value**

[Int32](https://learn.microsoft.com/dotnet/api/system.int32)

The index to an item in the [ResponseOptions](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/members#responseoptions) array. If no previous response exists then the value is -1.

### LastResponseNode

Gets the [OpcPropertyNode&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcpropertynode-1/) of the [LastResponse](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/members#lastresponse) property.

<div class="api-signature" data-lang="csharp">

```csharp
public OpcPropertyNode<int> LastResponseNode { get; }
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public ReadOnly Property LastResponseNode As OpcPropertyNode(Of Integer)
```

</div>

**Property value**

[OpcPropertyNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcpropertynode-1/)&lt;[Int32](https://learn.microsoft.com/dotnet/api/system.int32)&gt;

An instance of the [OpcPropertyNode&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcpropertynode-1/) class.

### OkResponse

Gets or sets a value which defines the index of the OK option in the [ResponseOptions](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/members#responseoptions) array.

<div class="api-signature" data-lang="csharp">

```csharp
public int OkResponse { get; set; }
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public Property OkResponse As Integer
```

</div>

**Property value**

[Int32](https://learn.microsoft.com/dotnet/api/system.int32)

This choice is the response that will allow the system to proceed with the operation described by the prompt. This allows a client to identify the OK option if a special handling for this option is available. If no OK option is available the value is -1.

### OkResponseNode

Gets the [OpcPropertyNode&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcpropertynode-1/) of the [OkResponse](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/members#okresponse) property.

<div class="api-signature" data-lang="csharp">

```csharp
public OpcPropertyNode<int> OkResponseNode { get; }
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public ReadOnly Property OkResponseNode As OpcPropertyNode(Of Integer)
```

</div>

**Property value**

[OpcPropertyNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcpropertynode-1/)&lt;[Int32](https://learn.microsoft.com/dotnet/api/system.int32)&gt;

An instance of the [OpcPropertyNode&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcpropertynode-1/) class.

### Prompt

Gets or sets the dialog prompt to be shown to the user.

<div class="api-signature" data-lang="csharp">

```csharp
public OpcText Prompt { get; set; }
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public Property Prompt As OpcText
```

</div>

**Property value**

[OpcText](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opctext/)

The message to be shown to the user.

### PromptNode

Gets the [OpcTextPropertyNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opctextpropertynode/) of the [Prompt](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/members#prompt) property.

<div class="api-signature" data-lang="csharp">

```csharp
public OpcTextPropertyNode PromptNode { get; }
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public ReadOnly Property PromptNode As OpcTextPropertyNode
```

</div>

**Property value**

[OpcTextPropertyNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opctextpropertynode/)

An instance of the [OpcTextPropertyNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opctextpropertynode/) class.

### RespondCallback

Gets or sets a callback used to respond on a dialog of the [OpcDialogConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/).

<div class="api-signature" data-lang="csharp">

```csharp
public OpcDialogRespondCallback RespondCallback { get; set; }
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public Property RespondCallback As OpcDialogRespondCallback
```

</div>

**Property value**

[OpcDialogRespondCallback](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogrespondcallback/)

A [OpcDialogRespondCallback](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogrespondcallback/) used to respond on a dialog of the dialog condition node. The value can also be a null reference (Nothing in Visual Basic).

### RespondNode

Gets the [OpcDialogResponseMethodNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogresponsemethodnode/) used to handle 'Respond' method calls to respond on a dialog of the condition node.

<div class="api-signature" data-lang="csharp">

```csharp
public OpcDialogResponseMethodNode RespondNode { get; }
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public ReadOnly Property RespondNode As OpcDialogResponseMethodNode
```

</div>

**Property value**

[OpcDialogResponseMethodNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogresponsemethodnode/)

An instance of the [OpcDialogResponseMethodNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogresponsemethodnode/) class. Which uses an [OpcDialogConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/) defined callback to respond on a dialog of the condition node.

### ResponseOptions

Gets or sets an array of supported response options.

<div class="api-signature" data-lang="csharp">

```csharp
public OpcText[] ResponseOptions { get; set; }
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public Property ResponseOptions As OpcText()
```

</div>

**Property value**

[OpcText](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opctext/)[]

An array of supported response options. The index in this array is used for the corresponding properties like [DefaultResponse](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/members#defaultresponse), [LastResponse](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/members#lastresponse) and the selected response in the respond method.

### ResponseOptionsNode

Gets the [OpcTextArrayPropertyNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opctextarraypropertynode/) of the [ResponseOptions](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/members#responseoptions) property.

<div class="api-signature" data-lang="csharp">

```csharp
public OpcTextArrayPropertyNode ResponseOptionsNode { get; }
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public ReadOnly Property ResponseOptionsNode As OpcTextArrayPropertyNode
```

</div>

**Property value**

[OpcTextArrayPropertyNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opctextarraypropertynode/)

An instance of the [OpcTextArrayPropertyNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opctextarraypropertynode/) class.

## Methods

### CreateBranchCore

<span class="api-meta">protected · override</span>

Creates a new instance of the [OpcDialogConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/) using the same [Id](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnode/members#id) and [Name](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnode/members#name) as this node.

<div class="api-signature" data-lang="csharp">

```csharp
protected override OpcConditionNode CreateBranchCore()
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Protected Overrides Function CreateBranchCore() As OpcConditionNode
```

</div>

**Returns**

[OpcConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcconditionnode/)

A new instance of the [OpcDialogConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/) identifiable and accessible througth the same [Id](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnode/members#id) and [Name](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnode/members#name) as this node.

**Overrides**

[CreateBranchCore](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcconditionnode/members#createbranchcore)

### Respond

Responses on the dialog of the dialog condition node and changes the [IsActive](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/members#isactive) to its [FalseState](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opctwostatevariablenode/members#falsestate) using the specified `context`.

<div class="api-signature" data-lang="csharp">

```csharp
public void Respond(OpcContext context, int selectedResponse)
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public Sub Respond(context As OpcContext, selectedResponse As Integer)
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `context` | [OpcContext](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opccontext/) | The [OpcContext](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opccontext/) to use. |
| `selectedResponse` | [Int32](https://learn.microsoft.com/dotnet/api/system.int32) | The selected index of the item in the [ResponseOptions](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/members#responseoptions). |

**Exceptions**

| Exception | Condition |
|---|---|
| [ArgumentNullException](https://learn.microsoft.com/dotnet/api/system.argumentnullexception) | The `context` is a null reference (Nothing in Visual Basic). |
| [OpcException](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcexception/) | The call failed (see exception details for more information). |

### RespondCore

<span class="api-meta">protected · virtual</span>

Responds on the dialog of the dialog condition node using the `context` and `selectedResponse` information specified.

<div class="api-signature" data-lang="csharp">

```csharp
protected virtual OpcStatusCode RespondCore(
    OpcNodeContext<OpcDialogConditionNode> context,
    int selectedResponse)
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Protected Overridable Function RespondCore(
    context As OpcNodeContext(Of OpcDialogConditionNode),
    selectedResponse As Integer) As OpcStatusCode
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `context` | [OpcNodeContext](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodecontext-1/)&lt;[OpcDialogConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/)&gt; | The [OpcNodeContext&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodecontext-1/) to use to respond on the dialog of the dialog condition node. |
| `selectedResponse` | [Int32](https://learn.microsoft.com/dotnet/api/system.int32) | The selected index of the item in the [ResponseOptions](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/members#responseoptions). |

**Returns**

[OpcStatusCode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcstatuscode/)

The [OpcStatusCode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcstatuscode/) specifying the outcome of the respond using the [RespondCallback](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/members#respondcallback) or [BadNotSupported](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcstatuscode/#badnotsupported) if there is no custom callback routine defined.
