エディタ部分を編集できるようにするには、DropDownStyleプロパティをDropDownに設定します。
Imports GrapeCity.Win.MultiRow
Imports PlusPakCell = GrapeCity.Win.MultiRow.PlusPak
Dim GcFontPickerCell1 = New PlusPakCell.GcFontPickerCell()
GcFontPickerCell1.DropDownStyle = GrapeCity.Win.Pickers.DropDownStyle.DropDown
GcMultiRow1.Template = Template.CreateGridTemplate(New Cell() {GcFontPickerCell1})
GcMultiRow1.RowCount = 10
using GrapeCity.Win.MultiRow;
using PlusPakCell = GrapeCity.Win.MultiRow.PlusPak;
PlusPakCell.GcFontPickerCell gcFontPickerCell1 = new PlusPakCell.GcFontPickerCell();
gcFontPickerCell1.DropDownStyle = GrapeCity.Win.Pickers.DropDownStyle.DropDown;
gcMultiRow1.Template = Template.CreateGridTemplate(new Cell[] { gcFontPickerCell1 });
gcMultiRow1.RowCount = 10;
DropDownスタイル

DropDownListスタイル
ドロップダウンボタンのカスタマイズ
既定では、GcFontPickerCellのエディタの右側にフォント一覧を表示するサイドボタン(ドロップダウンボタン)があります。

ドロップダウンボタンをカスタマイズするには、DropDownButtonクラスを使用します。設定できる主なプロパティは次のとおりです。これらの詳細については、DropDownButtonクラスを参照してください。
サイドボタンへのスピン動作の割り当て
サイドボタンでは、Behaviorプロパティを使用して、ボタンにスピン動作を割り当てることができます。

スピン動作を割り当てたサイドボタンによって、GcFontPickerCellのフォント一覧の項目を切り替えることができます。
Behaviorの値 |
説明 |
Intervalプロパティの初期値 |
Textプロパティの初期値 |
None |
スピン動作を割り当てません。 |
0 |
なし |
SpinUp |
スピンアップ(値を増加)の動作を割り当てます。 |
60 |
"+" |
SpinDown |
スピンダウン(値を減少)の動作を割り当てます。 |
60 |
"-" |
次のコードは、GcFontPickerCellにスピン動作を割り当てたサイドボタンを追加します。
Imports GrapeCity.Win.MultiRow
Imports PlusPakCell = GrapeCity.Win.MultiRow.PlusPak
' サイドボタンを定義
Private DownSideButton As New PlusPakCell.SideButton()
Private UpSideButton As New PlusPakCell.SideButton()
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim GcFontPickerCell1 As New PlusPakCell.GcFontPickerCell()
' サイドボタンに下矢印ボタンの動作を設定
DownSideButton.Behavior = GrapeCity.Win.Common.SideButtonBehavior.SpinDown
' サイドボタンにテキストを設定
DownSideButton.Text = "↓"
' サイドボタンをセル内の左側に配置
DownSideButton.Position = LeftRightAlignment.Left
' GcFontPickerCell にサイドボタンを設定
GcFontPickerCell1.SideButtons.Add(DownSideButton)
' サイドボタンに上矢印ボタンの動作を設定
UpSideButton.Behavior = GrapeCity.Win.Common.SideButtonBehavior.SpinUp
' サイドボタンにテキストを設定
UpSideButton.Text = "↑"
' サイドボタンをセル内の右側に配置
UpSideButton.Position = LeftRightAlignment.Right
' GcFontPickerCell にサイドボタンを設定
GcFontPickerCell1.SideButtons.Add(UpSideButton)
GcMultiRow1.Template = Template.CreateGridTemplate(New Cell() {GcFontPickerCell1})
GcMultiRow1.RowCount = 10
End Sub
using GrapeCity.Win.MultiRow;
using PlusPakCell = GrapeCity.Win.MultiRow.PlusPak;
// サイドボタンを定義
private PlusPakCell.SideButton downSideButton = new PlusPakCell.SideButton();
private PlusPakCell.SideButton upSideButton = new PlusPakCell.SideButton();
private void Form1_Load(object sender, EventArgs e)
{
PlusPakCell.GcFontPickerCell gcFontPickerCell1 = new PlusPakCell.GcFontPickerCell();
// サイドボタンに下矢印ボタンの動作を設定
downSideButton.Behavior = GrapeCity.Win.Common.SideButtonBehavior.SpinDown;
// サイドボタンにテキストを設定
downSideButton.Text = "↓";
// サイドボタンをセル内の左側に配置
downSideButton.Position = LeftRightAlignment.Left;
// GcFontPickerCell にサイドボタンを設定
gcFontPickerCell1.SideButtons.Add(downSideButton);
// サイドボタンに上矢印ボタンの動作を設定
upSideButton.Behavior = GrapeCity.Win.Common.SideButtonBehavior.SpinUp;
// サイドボタンにテキストを設定
upSideButton.Text = "↑";
// サイドボタンをセル内の右側に配置
upSideButton.Position = LeftRightAlignment.Right;
// GcFontPickerCell にサイドボタンを設定
gcFontPickerCell1.SideButtons.Add(upSideButton);
gcMultiRow1.Template = Template.CreateGridTemplate(new Cell[] { gcFontPickerCell1 });
gcMultiRow1.RowCount = 10;
}
シンボルボタンへのスピン動作の割り当て
シンボルボタンでは、Behaviorプロパティを使用して、ボタンにスピン動作を割り当てることができます。

スピン動作を割り当てたシンボルボタンによって、GcFontPickerCellのフォント一覧の項目を切り替えることができます。
Behaviorの値 |
説明 |
Intervalプロパティの初期値 |
Symbolプロパティの初期値 |
SymbolDirectionプロパティの初期値 |
None |
スピン動作を割り当てません。 |
0 |
None |
Left |
SpinUp |
スピンアップ(値を増加)の動作を割り当てます。 |
60 |
Arrow |
Up |
SpinDown |
スピンダウン(値を減少)の動作を割り当てます。 |
60 |
Arrow |
Down |
次のコードは、GcFontPickerCellにスピン動作を割り当てたシンボルボタンを追加します。
Imports GrapeCity.Win.MultiRow
Imports PlusPakCell = GrapeCity.Win.MultiRow.PlusPak
' サイドボタンを定義
Private DownSymbolButton As New PlusPakCell.SymbolButton()
Private UpSymbolButton As New PlusPakCell.SymbolButton()
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim GcFontPickerCell1 As New PlusPakCell.GcFontPickerCell()
' シンボルボタンに下矢印ボタンの動作を設定
DownSymbolButton.Behavior = GrapeCity.Win.Common.SideButtonBehavior.SpinDown
' シンボルボタンにイメージを設定
DownSymbolButton.Symbol = GrapeCity.Win.Common.Symbols.DoubleArrow
' シンボルボタンのイメージの方向を設定
DownSymbolButton.SymbolDirection = GrapeCity.Win.Common.SymbolDirection.Down
' シンボルボタンをセル内の左側に配置
DownSymbolButton.Position = LeftRightAlignment.Left
' GcFontPickerCell にシンボルボタンを設定
GcFontPickerCell1.SideButtons.Add(DownSymbolButton)
' シンボルボタンに上矢印ボタンの動作を設定
UpSymbolButton.Behavior = GrapeCity.Win.Common.SideButtonBehavior.SpinUp
' シンボルボタンにイメージを設定
UpSymbolButton.Symbol = GrapeCity.Win.Common.Symbols.DoubleArrow
' シンボルボタンのイメージの方向を設定
UpSymbolButton.SymbolDirection = GrapeCity.Win.Common.SymbolDirection.Up
' シンボルボタンをセル内の右側に配置
UpSymbolButton.Position = LeftRightAlignment.Right
' GcFontPickerCell にシンボルボタンを設定
GcFontPickerCell1.SideButtons.Add(UpSymbolButton)
GcMultiRow1.Template = Template.CreateGridTemplate(New Cell() {GcFontPickerCell1})
GcMultiRow1.RowCount = 10
End Sub
using GrapeCity.Win.MultiRow;
using PlusPakCell = GrapeCity.Win.MultiRow.PlusPak;
// シンボルボタンを定義
private PlusPakCell.SymbolButton downSymbolButton = new PlusPakCell.SymbolButton();
private PlusPakCell.SymbolButton upSymbolButton = new PlusPakCell.SymbolButton();
private void Form1_Load(object sender, EventArgs e)
{
PlusPakCell.GcFontPickerCell gcFontPickerCell1 = new PlusPakCell.GcFontPickerCell();
// シンボルボタンに下矢印ボタンの動作を設定
downSymbolButton.Behavior = GrapeCity.Win.Common.SideButtonBehavior.SpinDown;
// シンボルボタンにイメージを設定
downSymbolButton.Symbol = GrapeCity.Win.Common.Symbols.DoubleArrow;
// シンボルボタンのイメージの方向を設定
downSymbolButton.SymbolDirection = GrapeCity.Win.Common.SymbolDirection.Down;
// シンボルボタンをセル内の左側に配置
downSymbolButton.Position = LeftRightAlignment.Left;
// GcFontPickerCell にシンボルボタンを設定
gcFontPickerCell1.SideButtons.Add(downSymbolButton);
// シンボルボタンに上矢印ボタンの動作を設定
upSymbolButton.Behavior = GrapeCity.Win.Common.SideButtonBehavior.SpinUp;
// シンボルボタンにイメージを設定
upSymbolButton.Symbol = GrapeCity.Win.Common.Symbols.DoubleArrow;
// シンボルボタンのイメージの方向を設定
upSymbolButton.SymbolDirection = GrapeCity.Win.Common.SymbolDirection.Up;
// シンボルボタンをセル内の右側に配置
upSymbolButton.Position = LeftRightAlignment.Right;
// GcFontPickerCell にシンボルボタンを設定
gcFontPickerCell1.SideButtons.Add(upSymbolButton);
gcMultiRow1.Template = Template.CreateGridTemplate(new Cell[] { gcFontPickerCell1 });
gcMultiRow1.RowCount = 10;
}
サイドボタンが属する親コントロールの取得
各サイドボタンは、Parentプロパティによりそのサイドボタンが属する親コントロールとなるセルを取得できます。
以下のサンプルコードでは、サイドボタンから親コントロールのセルを取得します。
Imports GrapeCity.Win.MultiRow
Imports PlusPakCell = GrapeCity.Win.MultiRow.PlusPak
Dim cell As Cell = DirectCast(GcMultiRow1.Rows(0).Cells(0), PlusPakCell.GcFontPickerCell).SideButtons(0).Parent
Console.WriteLine(cell.Name)
using GrapeCity.Win.MultiRow;
using PlusPakCell = GrapeCity.Win.MultiRow.PlusPak;
Cell cell = (gcMultiRow1.Rows[0].Cells[0] as PlusPakCell.GcFontPickerCell).SideButtons[0].Parent;
Console.WriteLine(cell.Name);