PowerTools MultiRow for Windows Forms 8.0J
3段階のアイコンによる通知(ThreeStateIconNotify)

ThreeStateIconNotifyを使用すると、入力値が有効な値、無効な値の場合にそれぞれアイコンを表示して、エラーの内容を通知できます。また、未入力の場合にはアイコンを表示しません。
デザイナによる設定
デザイナでセルの検証と共にThreeStateIconNotify使用するには、次のように操作します。

  1. 値を検証するセルを選択する。(例: numericUpDownCell1)
  2. プロパティウィンドウでValidatorsプロパティを選択し、[...]ボタンをクリックする。
  3. 表示されたCellValidatorコレクションエディタで左上のコンボボックスから「RangeValidator」を選択し、[追加]をクリックする。
  4. [メンバ]リストでRangeValidatorが選択されていることを確認する。
  5. 画面右のプロパティグリッドでMaxValueプロパティを選択し、「10」を入力する。
  6. 画面右のプロパティグリッドでMinValueプロパティを選択し、「0」を入力する。
  7. [OK]ボタンをクリックしてウィンドウを閉じる。
  8. 画面右のプロパティグリッドでActionsプロパティを選択し、[...]ボタンをクリックする。
  9. 表示されたCellValidateActionコレクションエディタでThreeStateIconNotifyを追加する。
  10. [メンバ]リストでThreeStateIconNotifyが選択されていることを確認する。画面右のプロパティグリッドでDoActionReasonプロパティにEndEditを設定する。
  11. [OK]ボタンをクリックしてCellValidateActionコレクションエディタを閉じる。
  12. [OK]ボタンをクリックしてCellValidatorコレクションエディタを閉じる。
  13. デザイナのドキュメントウィンドウのタブを「実行時」に切り替える。
  14. numericUpDownCell1に「20」を入力してセルを移動して、エラー時のアイコンが表示されることを確認する。
  15. numericUpDownCell1に「5」を入力してセルを移動して、正常時のアイコンが表示されることを確認する。
コーディングによる設定
次のコードは、セルに0〜10の範囲を超える数値が入力されたときにエラー時のアイコンを表示し、0〜10の範囲内の値が入力されたときに正常時のアイコンを表示します。

Imports GrapeCity.Win.MultiRow

Dim NumericUpDownCell1 As New NumericUpDownCell()
Dim RangeValidator1 As New RangeValidator()
RangeValidator1.RequiredType = GetType(Integer)
RangeValidator1.MaxValue = 10
RangeValidator1.MinValue = 0
RangeValidator1.Actions.Add(New ThreeStateIconNotify())
NumericUpDownCell1.Validators.Add(RangeValidator1)

Dim cells As Cell() = {NumericUpDownCell1}
GcMultiRow1.Template = Template.CreateGridTemplate(cells)
GcMultiRow1.RowCount = 10
using GrapeCity.Win.MultiRow;

NumericUpDownCell numericUpDownCell1 = new NumericUpDownCell();
RangeValidator rangeValidator1 = new RangeValidator();
rangeValidator1.RequiredType = typeof(int);
rangeValidator1.MaxValue = 10;
rangeValidator1.MinValue = 0;
rangeValidator1.Actions.Add(new ThreeStateIconNotify());
numericUpDownCell1.Validators.Add(rangeValidator1);

Cell[] cells = { numericUpDownCell1 };
gcMultiRow1.Template = Template.CreateGridTemplate(cells);
gcMultiRow1.RowCount = 10;
  • InputManのThreeStateIconNotifyプロパティで提供されているBlinkRateプロパティ、BlinkStyleプロパティ、IconPaddingプロパティはサポートされません。
   
参照

 

 


© 2008-2015 GrapeCity inc. All rights reserved.