セルに検証を追加する

検証の種類

Aspose.Cells.GridWebを使用して3種類の検証が適用できます:

  • リストの検証。
  • ドロップダウンリストの検証。
  • カスタム式の検証。

それぞれについて詳しく説明します。

リストの検証

リストの検証では、ユーザーがセル入力をタイプするか、メニューから値を選択することができます。 セルにリストの検証を作成するには:

  1. Web フォームに Aspose.Cells.GridWeb コントロールを追加します。
  2. ワークシートにアクセスします。
  3. 検証を追加するセルにアクセスします。
  4. セルの検証を作成し、検証のタイプをリストとして指定します。
  5. リストの検証に値を追加します。

この例のコードは、C1 にリストの検証を追加します。 ユーザーがセルをクリックすると、リストが表示されます。

出力:リストから値を選択

todo:image_alt_text

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// Accessing the cells collection of the worksheet that is currently active
GridWorksheet sheet = GridWeb1.WorkSheets[GridWeb1.ActiveSheetIndex];
// Access "B1" cell and add some text
GridCell cell = sheet.Cells[0, 1];
cell.PutValue("Select Course:");
// Accessing "C1" cell
cell = sheet.Cells[0, 2];
// Creating List validation for the "C1" cell
var validation = cell.CreateValidation(GridValidationType.List, true);
// Adding values to List validation
var values = new System.Collections.Specialized.StringCollection();
values.Add("Fortran");
values.Add("Pascal");
values.Add("C++");
values.Add("Visual Basic");
values.Add("Java");
values.Add("C#");
validation.ValueList = values;

ドロップダウンリストの検証

ドロップダウンリストの検証では、事前定義されたリストから値を選択してセルに入力することができます。 ドロップダウンリストの検証を作成するには:

  1. Web フォームに Aspose.Cells.GridWeb コントロールを追加します。
  2. ワークシートにアクセスします。
  3. 検証を作成するセルにアクセスします。
  4. セルの検証を作成し、タイプを DropDownList として指定します。
  5. 検証の値を追加します。

この例のコードは、C1 にドロップダウンリストの検証を追加します。 ユーザーがセルをクリックすると、ドロップダウンが表示され、ユーザーはそこから値を選択できます。

ドロップダウンから値を選択

todo:image_alt_text

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// Accessing the cells collection of the worksheet that is currently active
GridWorksheet sheet = GridWeb1.WorkSheets[GridWeb1.ActiveSheetIndex];
// Access "B1" cell and add some text
GridCell cell = sheet.Cells[0, 1];
cell.PutValue("Select Degree:");
// Accessing "C1" cell
cell = sheet.Cells[0, 2];
// Creating DropDownList validation for the "C1" cell
var validation = cell.CreateValidation(GridValidationType.DropDownList, true);
// Adding values to DropDownList validation
var values = new System.Collections.Specialized.StringCollection();
values.Add("Bachelor");
values.Add("Master");
values.Add("Doctor");
validation.ValueList = values;

カスタム式の検証

カスタム式の検証では、開発者が独自の正規表現を使用して入力値を検証することができます。 カスタム式の検証を作成するには:

  1. Web フォームに Aspose.Cells.GridWeb コントロールを追加します。
  2. ワークシートにアクセスします。
  3. 検証を作成するセルにアクセスします。
  4. セルの検証を作成し、タイプを CustomExpression として指定します。
  5. 検証の正規表現を設定します。

このサンプルコードは、C1 にカスタム式の検証を追加します。 ユーザーは、正規表現に指定されたフォーマットに従った日付のみセルに追加できます。

正規表現に従って C1 に日付値を追加

todo:image_alt_text

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// Accessing the cells collection of the worksheet that is currently active
GridWorksheet sheet = GridWeb1.WorkSheets[GridWeb1.ActiveSheetIndex];
// Access "B1" cell and add some text
GridCell cell = sheet.Cells[0, 1];
cell.PutValue("Date (yyyy-mm-dd):");
// Access "C1" cell and add to it custom expression validation to accept dates in yyyy-mm-dd format
cell = sheet.Cells[0, 2];
var validation = cell.CreateValidation(GridValidationType.CustomExpression, true);
validation.RegEx = @"\d{4}-\d{2}-\d{2}";

検証の強制

Aspose.Cells.GridWeb を使用すると、ユーザーは入力データをサーバーに送信できます。 さまざまなセルに検証ルールがあっても、GridWeb コントロールの ForceValidation プロパティが true に設定されていない場合、間違った入力データもサーバーに送信され、検証が強制されません。 GridWeb の ForceValidation プロパティは常にデフォルトで true に設定されています。

ForceValidation プロパティが true の場合、すべてのセルの入力値が有効でない限り、コントロールはデータを Web サーバーに送信しません。 たとえば、誰かがセルに無効な入力値を入力したり、値を入力しなかった場合、クライアント側の検証がアクティブ化され、ユーザーは送信をクリックしてもデータを送信できません。

GridWeb によって強調表示された誤った入力値

todo:image_alt_text