書式の設定
CalendarGcTimeSpanCellTypeの書式を設定するには、直接フィールドオブジェクトを追加する方法と、キーワード文字列によりフィールドを自動生成する方法があります。それぞれの方法による書式の設定方法については、以下のトピックを参照してください。
改行コードの取り扱い
CalendarGcTimeSpanCellType.AcceptsCrLfプロパティを使用します。
AcceptsCrLfプロパティを使用してクリップボードへ改行を含む文字列をコピー、または貼り付けた場合の改行コードの扱いを設定できます。AcceptsCrLfプロパティは、以下の3つの動作から選択します。
AcceptsCrLfの値 |
説明 |
NoControl |
改行コードはそのままでコピー、貼り付けを行います。従来のInputManのタイムスパンコントロールと同じ動作です。 |
Filter |
全ての改行コードを削除しコピー、貼り付けを行います。 |
Cut |
最初の改行コード以降の文字列を削除します。標準コントロールと同じ動作です。 |
フィールド操作の方法
CalendarGcTimeSpanCellType.FieldsプロパティまたはGcTimeSpan.Fieldsプロパティのコレクションを通して特定のフィールドにアクセスできます。
フィールドコレクション内の特定のフィールドにアクセスする場合、次のいずれかの方法を使うことができます。
- インデックスからフィールドにアクセス
- キー(文字列)からフィールドにアクセス
コレクションのインデックスがわかっている場合は、インデックスを使ってフィールドを取得することができます。
次のサンプルはインデックスを使ってフィールドを取得する例です。ここではCalendarGcTimeSpanCellTypeの3番目のフィールドを取得する例です。
Dim cell As InputManCell.CalendarGcTimeSpanCellType =
CType(GcCalendarGrid1.Content(DateTime.Today)(1, 0).CellType, InputManCell.CalendarGcTimeSpanCellType)
Dim myField As InputManCell.TimeSpanField = cell.Fields(2)
InputManCell.CalendarGcTimeSpanCellType cell =
(gcCalendarGrid1[DateTime.Today][1, 0].CellType as InputManCell.CalendarGcTimeSpanCellType);
InputManCell.TimeSpanField myField = (InputManCell.TimeSpanField)cell.Fields[2];
また、インデックスを使わず、設定したキー(文字列)を使って特定のフィールドにアクセスすることもできます。
キーは、各フィールドのName プロパティにキーとして文字列を設定します。
次のサンプルはキーを使ってフィールドを取得する例です。ここではCalendarGcTimeSpanCellTypeの特定のフィールドのName プロパティに予め"Key1"という文字列が設定されていることを前提にしています。
Dim cell As InputManCell.CalendarGcTimeSpanCellType =
CType(GcCalendarGrid1.Content(DateTime.Today)(1, 0).CellType, InputManCell.CalendarGcTimeSpanCellType)
Dim myField As InputManCell.TimeSpanField = cell.Fields("Key1")
InputManCell.CalendarGcTimeSpanCellType cell =
(gcCalendarGrid1[DateTime.Today][1, 0].CellType as InputManCell.CalendarGcTimeSpanCellType);
InputManCell.TimeSpanField myField = (InputManCell.TimeSpanField)cell.Fields["Key1"];
イベントの利用
フィールド間のキャレットの移動を検出するには、GcTimeSpan.FieldEnterおよびFieldLeaveイベントを使用します。
関連トピック