---
title: InfragisticsGridCustomizer.VisiblityModes
summary: API reference for InfragisticsGridCustomizer.VisiblityModes.
status: draft
owner: SAIF documentation generator
last_reviewed: 2026-08-17
library: SAIF.Presentation.Web.Controls.AJAX.Infragistics103
reference_type: package
---

# InfragisticsGridCustomizer.VisiblityModes

`InfragisticsGridCustomizer.VisiblityModes` is the enum that classifies each grid column's visibility behavior within [InfragisticsGridCustomizer](InfragisticsGridCustomizer.md), distinguishing user-toggleable columns from columns whose visibility is fixed by the hosting page's configuration. It is the mechanism through which [BR-AJAX-002](../../business-rules.md#br-ajax-002-always-visible-and-always-hidden-grid-columns-cannot-be-toggled-by-the-end-user) is enforced.

## Purpose
- Marks each `HidableInfragisticsColumn` as `Normal` (user-toggleable via the checkbox list), `AlwaysVisible` (always shown, checkbox disabled), or `AlwaysHidden` (never shown, excluded from the checkbox list entirely), driving the checkbox-enablement and visibility logic in `InfragisticsGridCustomizer.ListItems`/`Update`/`ManipulateGrid`.
- Set once per column during `InfragisticsGridCustomizer.InitializeColumnList`, based on whether the column's key appears in the `inAlwaysVisibleColumnKeys`/`inAlwaysHiddenColumnKeys` constructor parameters.

## Context
- Namespace: `SAIF.Presentation.Web.Controls.V2.AJAX`
- Assembly/package: `SAIF.Presentation.Web.Controls.AJAX.Infragistics103`
- Declared as a nested `Public Enum` inside `InfragisticsGridCustomizer`.

## Members
| Member | Purpose |
| --- | --- |
| `Normal` | The column responds to end-user checkbox selections in the customization popup; this is the default for any column not listed in the always-visible/always-hidden override lists. |
| `AlwaysVisible` | The column is always rendered as visible; its checkbox appears in the popup but is disabled (`Enabled = False`), enforcing [BR-AJAX-002](../../business-rules.md#br-ajax-002-always-visible-and-always-hidden-grid-columns-cannot-be-toggled-by-the-end-user). |
| `AlwaysHidden` | The column is forced `ServerOnly = True` and never appears in the checkbox list at all, enforcing [BR-AJAX-002](../../business-rules.md#br-ajax-002-always-visible-and-always-hidden-grid-columns-cannot-be-toggled-by-the-end-user). |

## Behavioral notes
- Column keys used to assign `AlwaysVisible`/`AlwaysHidden` are validated at construction time against the target grid's actual columns; an unmatched key throws `ApplicationException`, per [BR-AJAX-003](../../business-rules.md#br-ajax-003-grid-column-visibility-override-keys-must-exist-on-the-target-grid).

## Constraints and usage notes
- This enum has no members beyond the three listed; there is no extension point for additional visibility states.

## Sources
- `SAIF.Presentation.Web.Controls.AJAX.Infragistics103\InfragisticsGridCustomizer.vb`
