GrapeCity MultiRow for Windows Forms 11.0J
視覚的な補助

GcTimeSpanCellでは様々な視覚的な補助機能を提供しています。この章ではそれらの機能について解説します。

未入力時に表示する代替テキスト

AlternateTextプロパティを使用すれば、セルが未入力(GcTimeSpanCell.Value)のときに代わりに表示するテキストを文字列として設定することができます。


(図) 代替テキストを表示したGcTimeSpanCell

AlternateTextプロパティは、TimeSpanAlternateTextオブジェクトを参照し、TimeSpanAlternateTextクラスのプロパティを使用して以下の代替テキストを設定できます。

プロパティ 代替テキストの内容
 DisplayNull コントロールにフォーカスがなく、未入力のときの代替テキスト
 DisplayZero コントロールにフォーカスがなく、値が0のときの代替テキスト
 Null コントロールにフォーカスがあり、未入力のときの代替テキスト
 Zero コントロールにフォーカスがあり、値が0のときの代替テキスト
       

これらのプロパティはAlternateTextクラスを参照し、次の2つを設定することができます。

次のサンプルコードは、代替テキストを設定する例です。

Imports GrapeCity.Win.MultiRow
Imports InputManCell = GrapeCity.Win.MultiRow.InputMan

Dim GcTimeSpanCell1 As New InputManCell.GcTimeSpanCell()
GcTimeSpanCell1.Size = New Size(150, 20)

' フォーカスがないときの代替テキスト
GcTimeSpanCell1.AlternateText.DisplayNull.Text = "日数を入力してください"
GcTimeSpanCell1.AlternateText.DisplayNull.ForeColor = Color.Gray
GcTimeSpanCell1.AlternateText.DisplayZero.Text = "0日は無効です"
GcTimeSpanCell1.AlternateText.DisplayZero.ForeColor = Color.Pink

' フォーカスがあるときの代替テキスト
GcTimeSpanCell1.AlternateText.Null.Text = "実施期間を入力してください"
GcTimeSpanCell1.AlternateText.Null.ForeColor = Color.Red
GcTimeSpanCell1.AlternateText.Zero.Text = "1日以上を入力してください"
GcTimeSpanCell1.AlternateText.Zero.ForeColor = Color.Red

GcMultiRow1.Template = Template.CreateGridTemplate(New Cell() {GcTimeSpanCell1})
GcMultiRow1.RowCount = 5
                                                                
using GrapeCity.Win.MultiRow;
using InputManCell = GrapeCity.Win.MultiRow.InputMan;

InputManCell.GcTimeSpanCell gcTimeSpanCell1 = new InputManCell.GcTimeSpanCell();
gcTimeSpanCell1.Size = new Size(150, 20);

// フォーカスがないときの代替テキスト
gcTimeSpanCell1.AlternateText.DisplayNull.Text = "日数を入力してください";
gcTimeSpanCell1.AlternateText.DisplayNull.ForeColor = Color.Gray;
gcTimeSpanCell1.AlternateText.DisplayZero.Text = "0日は無効です";
gcTimeSpanCell1.AlternateText.DisplayZero.ForeColor = Color.Pink;

// フォーカスがあるときの代替テキスト
gcTimeSpanCell1.AlternateText.Null.Text = "実施期間を入力してください";
gcTimeSpanCell1.AlternateText.Null.ForeColor = Color.Red;
gcTimeSpanCell1.AlternateText.Zero.Text = "1日以上を入力してください";
gcTimeSpanCell1.AlternateText.Zero.ForeColor = Color.Red;

gcMultiRow1.Template = Template.CreateGridTemplate(new Cell[] { gcTimeSpanCell1 });
gcMultiRow1.RowCount = 5;
入力候補値の表示

ShowRecommendedValueプロパティを使用すると、GcTimeSpanCellで値が未入力のとき、入力候補となる値をグレー表示することができます。
入力候補として表示されたタイムスパンの値は、表示された候補値のまま適用するか、その一部もしくは全ての値を変更して入力値として適用することができます。
入力候補として表示される値は、RecommendedValueプロパティで設定します。

候補として表示された値を確定するには、[Ctrl]+[Enter]キーを押下します。


(図) 入力候補値を変更せずに値を確定


(図) 入力候補値から値の一部を変更して値を確定

ハイライト表示

HighlightTextプロパティを使用すると、フォーカスを受け取ったときのテキストの選択状態を設定することができます。HighlightText.Allの場合は、セルのすべてのテキストが選択状態になります。HighlightText.Fieldの場合は、セル内のフィールドの1つを選択状態にすることができます。

HighlightTextの値 カレットまたはフィールドの状態
None カレットは、DefaultActiveFieldプロパティで指定したフィールドの最初に位置します。DefaultActiveFieldプロパティが既定値のときは、カレットの位置は、SelectionStartプロパティとSelectionLengthプロパティの設定で決まります。
Field DefaultActiveFieldプロパティで指定したフィールドが選択状態になります。DefaultActiveFieldプロパティが既定値のときは、SelectionStartプロパティで設定された文字以降の最初のフィールドが選択状態になります。SelectionStart以降がすべてリテラル文字の場合は、前のフィールドが選択状態になります。
All DefaultActiveFieldプロパティの設定に関わらず、セル内のすべての内容が選択状態になります。
関連トピック

 

 


© 2008 GrapeCity inc. All rights reserved.