本文為機器翻譯文章。如需檢視英文版,請選取 [原文] 核取方塊。您也可以將滑鼠指標移到文字上,即可在快顯視窗顯示英文原文。
譯文
原文

ContentControlBase.Validating 事件

 

驗證內容控制項的內容時發生。

命名空間:   Microsoft.Office.Tools.Word
組件:  Microsoft.Office.Tools.Word (在 Microsoft.Office.Tools.Word.dll 中)

event CancelEventHandler Validating

當控制項遺失焦點時,會引發 Validating 事件。處理 Validating 事件,根據您選擇的準則來判斷內容控制項中的文字是否有效。例如,如果您有包含電話號碼的內容控制項,就可以驗證它是否只包含適當字元 (數字、括號、連字號)。如果內容無效,您可以將事件處理常式之 CancelEventArgs 參數的 Cancel 屬性設定為 true,便會取消事件,並將焦點傳回至控制項。實際效用是使用者無法離開控制項,直到文字有效為止。

若要在成功驗證內容控制項之後執行程式碼,請處理 Validated 事件。

下列程式碼範例會示範 ValidatingValidated 事件的事件處理常式。使用者變更內容控制項中的文字之後,Validating 事件的事件處理常式會使用規則運算式,確認該文字沒有包含整數。

這個範例會假設文件包含名為 plainTextContentControl1PlainTextContentControl若要使用這段程式碼,請將它貼到專案的 ThisDocument 類別中。若為 C#,您還必須將事件處理常式附加至 plainTextContentControl1ValidatedValidating 事件。

這是示範文件層級自訂的範例。

void plainTextContentControl1_Validating(object sender, System.ComponentModel.CancelEventArgs e)
{
    Microsoft.Office.Tools.Word.PlainTextContentControl control =
        sender as Microsoft.Office.Tools.Word.PlainTextContentControl;

    if (control != null)
    {
        System.Text.RegularExpressions.Regex regex = new System.Text.RegularExpressions.Regex(@"\d");
        if (regex.IsMatch(control.Text))
        {
            MessageBox.Show("Invalid name. Names cannot contain integers.");
            e.Cancel = true;
        }
    }
}

void plainTextContentControl1_Validated(object sender, EventArgs e)
{
    MessageBox.Show("The name is valid.");
}
回到頁首
顯示: