<!--
{
  "availability" : [
    "macOS: -"
  ],
  "documentType" : "symbol",
  "framework" : "AppKit",
  "identifier" : "/documentation/AppKit/NSBindingOption",
  "metadataVersion" : "0.1.0",
  "role" : "Structure",
  "symbol" : {
    "kind" : "Structure",
    "modules" : [
      "AppKit"
    ],
    "preciseIdentifier" : "c:@T@NSBindingOption"
  },
  "title" : "NSBindingOption"
}
-->

# NSBindingOption

```
struct NSBindingOption
```

## Discussion

Values that are used as keys in the options dictionary passed to the <doc://com.apple.documentation/documentation/ObjectiveC/NSObject-swift.class/bind(_:to:withKeyPath:options:)> method.

These keys are also used in the dictionary returned as the [`options`](/documentation/AppKit/NSBindingInfoKey/options) value of <doc://com.apple.documentation/documentation/ObjectiveC/NSObject-swift.class/infoForBinding(_:)>. For more information, see [Cocoa Bindings](/documentation/AppKit/cocoa-bindings).

## Topics

### Binding Options

[`allowsEditingMultipleValuesSelection`](/documentation/AppKit/NSBindingOption/allowsEditingMultipleValuesSelection)

An `NSNumber` object containing a Boolean value that determines if the binding allows editing when the value represents a multiple selection.

[`allowsNullArgument`](/documentation/AppKit/NSBindingOption/allowsNullArgument)

An `NSNumber` object containing a Boolean value that determines if the argument bindings allows passing argument values of `nil`.

[`alwaysPresentsApplicationModalAlerts`](/documentation/AppKit/NSBindingOption/alwaysPresentsApplicationModalAlerts)

A number containing a Boolean value that determines if validation and error alert panels displayed as a result of this binding are displayed as application modal alerts.

[`conditionallySetsEditable`](/documentation/AppKit/NSBindingOption/conditionallySetsEditable)

An `NSNumber` object containing a Boolean value that determines if the editable state of the user interface item is automatically configured based on the controller’s selection.

[`conditionallySetsEnabled`](/documentation/AppKit/NSBindingOption/conditionallySetsEnabled)

An `NSNumber` object containing a Boolean value that determines if the enabled state of the user interface item is automatically configured based on the controller’s selection.

[`conditionallySetsHidden`](/documentation/AppKit/NSBindingOption/conditionallySetsHidden)

An `NSNumber` object containing a Boolean value that determines if the hidden state of the user interface item is automatically configured based on the controller’s selection.

[`contentPlacementTag`](/documentation/AppKit/NSBindingOption/contentPlacementTag)

A number that specifies the tag id of the popup menu item to replace with the content of the array.

[`continuouslyUpdatesValue`](/documentation/AppKit/NSBindingOption/continuouslyUpdatesValue)

An `NSNumber` object containing a Boolean value that determines whether the value of the binding is updated as edits are made to the user interface item or is updated only when the user interface item resigns as the responder.

[`createsSortDescriptor`](/documentation/AppKit/NSBindingOption/createsSortDescriptor)

An `NSNumber` object containing a Boolean value that determines if a sort descriptor is created for a table column.

[`deletesObjectsOnRemove`](/documentation/AppKit/NSBindingOption/deletesObjectsOnRemove)

An `NSNumber` object containing a Boolean value that determines if an object is deleted from the managed context immediately upon being removed from a relationship.

[`displayName`](/documentation/AppKit/NSBindingOption/displayName)

An `NSString` object containing a human readable string to be displayed for a predicate.

[`displayPattern`](/documentation/AppKit/NSBindingOption/displayPattern)

An `NSString` object that specifies a format string used to construct the final value of a string.

[`handlesContentAsCompoundValue`](/documentation/AppKit/NSBindingOption/handlesContentAsCompoundValue)

An `NSNumber` object containing a Boolean value that determines if the content is treated as a compound value.

[`insertsNullPlaceholder`](/documentation/AppKit/NSBindingOption/insertsNullPlaceholder)

An `NSNumber` object containing a Boolean value that determines if an additional item which represents `nil` is inserted into a matrix or pop-up menu before the items in the content array.

[`invokesSeparatelyWithArrayObjects`](/documentation/AppKit/NSBindingOption/invokesSeparatelyWithArrayObjects)

An `NSNumber` object containing a Boolean value that determines whether the specified selector is invoked with the array as the argument or is invoked repeatedly with each array item as an argument.

[`multipleValuesPlaceholder`](/documentation/AppKit/NSBindingOption/multipleValuesPlaceholder)

An object that is used as a placeholder when the key path of the bound controller returns the `NSMultipleValuesMarker` marker for a binding.

[`noSelectionPlaceholder`](/documentation/AppKit/NSBindingOption/noSelectionPlaceholder)

An object that is used as a placeholder when the key path of the bound controller returns the `NSNoSelectionMarker` marker for a binding.

[`notApplicablePlaceholder`](/documentation/AppKit/NSBindingOption/notApplicablePlaceholder)

An object that is used as a placeholder when the key path of the bound controller returns the `NSNotApplicableMarker` marker for a binding.

[`nullPlaceholder`](/documentation/AppKit/NSBindingOption/nullPlaceholder)

An object that is used as a placeholder when the key path of the bound controller returns `nil` for a binding.

[`predicateFormat`](/documentation/AppKit/NSBindingOption/predicateFormat)

An `NSString` object containing the predicate pattern string for the predicate bindings. Use `$value` to refer to the value in the search field.

[`raisesForNotApplicableKeys`](/documentation/AppKit/NSBindingOption/raisesForNotApplicableKeys)

An `NSNumber` object containing a Boolean value that specifies if an exception is raised when the binding is bound to a key that is not applicable—for example when an object is not key-value coding compliant for a key.

[`selectorName`](/documentation/AppKit/NSBindingOption/selectorName)

An `NSString` object that specifies the method selector invoked by the target binding when the user interface item is clicked.

[`selectsAllWhenSettingContent`](/documentation/AppKit/NSBindingOption/selectsAllWhenSettingContent)

An `NSNumber` object containing a Boolean value that specifies if all the items in the array controller are selected when the content is set.

[`validatesImmediately`](/documentation/AppKit/NSBindingOption/validatesImmediately)

An `NSNumber` object containing a Boolean value that determines if the contents of the binding are validated immediately.

[`valueTransformer`](/documentation/AppKit/NSBindingOption/valueTransformer)

An `NSValueTransformer` instance that is applied to the bound value.

[`valueTransformerName`](/documentation/AppKit/NSBindingOption/valueTransformerName)

The value for this key is an identifier of a registered `NSValueTransformer` instance that is applied to the bound value.

### Initializers

[`init(rawValue:)`](/documentation/AppKit/NSBindingOption/init(rawValue:))



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)