MESCIUS MultiRow for Windows Forms 12.0J
外観の設定

GcFontPickerCellの外観のカスタマイズ方法について、以下に解説します。

エディタのカスタマイズ

エディタ部分を編集できるようにするには、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クラスを参照してください。

プロパティ 説明
BackColor ボタンの背景色を取得または設定します。
ButtonWidth ボタンの幅を取得または設定します。
FlatAppearance セルのFlatStyleがFlatの時、ボタンの境界線の外観と色を取得します。
Position サイドボタンの位置を取得または設定します。
Visible サイドボタンの表示設定を取得または設定します。

サイドボタンへのスピン動作の割り当て

サイドボタンでは、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);
                                                                
関連トピック

 

 


© MESCIUS inc. All rights reserved.