---
title: SAIFWebMaskEdit
summary: API reference for SAIFWebMaskEdit.
status: draft
owner: SAIF Doc Gen
last_reviewed: 2026-08-17
library: SAIF.Presentation.Web.Controls.Infragistics111
reference_type: package
---

# SAIFWebMaskEdit

`SAIFWebMaskEdit` extends the Infragistics `WebMaskEdit` control to give consuming code-behind clean, usable data values instead of the raw masked text: an unfilled field returns an empty string rather than the mask's literal formatting characters, and a phone number entered without an extension has its trailing extension marker removed. Consuming pages read `PhoneValue` or `TaxIdValue` directly from code-behind; there is no push-based binding framework involved.

## Purpose
- Return an empty string, rather than mask-literal punctuation, when a masked field has no user entry ([BR-CTL-014](../../business-rules.md#br-ctl-014-empty-masked-field-returns-an-empty-string)).
- Strip a dangling extension marker (`x`) from a phone value that was entered without an extension ([BR-CTL-015](../../business-rules.md#br-ctl-015-phone-value-omits-trailing-extension-marker-when-absent)).

## Context
- Namespace: `SAIF.Presentation.Web.Controls.V2`
- Assembly/package: `SAIF.Presentation.Web.Controls.Infragistics111` (packaged as source into `SAIF.BOF.Presentation.Web.Infragistics111`)
- Base class: `Infragistics.WebUI.WebDataInput.WebMaskEdit` (external Infragistics 11.1 vendor type; not part of this repository's documentation set)

## Public members
| Member | Signature | Purpose |
| --- | --- | --- |
| `PHONE_EXT` | `Public Const PHONE_EXT As String = "x"` | The extension-separator token `PhoneValue` looks for and trims when a phone number has no digits after it. |
| `PhoneValue` | `Public ReadOnly Property PhoneValue() As String` | Returns the entered phone number with a trailing, empty extension marker removed, or an empty string when nothing was entered; swallows `System.Data.StrongTypingException` and returns an empty string on that specific failure ([BR-CTL-014](../../business-rules.md#br-ctl-014-empty-masked-field-returns-an-empty-string), [BR-CTL-015](../../business-rules.md#br-ctl-015-phone-value-omits-trailing-extension-marker-when-absent)). |
| `TaxIdValue` | `Public ReadOnly Property TaxIdValue() As String` | Returns the entered tax ID as-is (not trimmed), or an empty string when nothing was entered, avoiding the mask's literal characters ([BR-CTL-014](../../business-rules.md#br-ctl-014-empty-masked-field-returns-an-empty-string)). |

## Behavioral notes
- `PhoneValue` trims the raw text before extension-marker processing; `TaxIdValue` does not trim its non-empty return value, so leading/trailing whitespace in a tax ID entry is preserved.*
- Only `System.Data.StrongTypingException` is caught in `PhoneValue`; any other exception raised while reading `Text`/`RawText` propagates to the caller uncaught.

## Constraints and usage notes
- `PhoneValue` and `TaxIdValue` read the inherited `RawText`/`Text` members from `WebMaskEdit`, so their output depends on the mask format configured on the control instance at runtime.*

> **Note:** Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts.

## Sources
- `SAIF.Presentation.Web.Controls.Infragistics111/SAIFWebMaskEdit.vb`
