SPREAD for WPF 3.0J - GcSpreadSheet
設定方法(ドロップダウン電卓)
SPREAD for WPF 3.0J - GcSpreadSheet > 開発者ガイド > セル型 > 数値型セル > ドロップダウン電卓 > 設定方法(ドロップダウン電卓)

ドロップダウン電卓の機能を使用するには、ドロップダウン電卓を表す GcDropDownCalculator コントロールのスタイルを設定します。

ここで言う「スタイル」は WPF のスタイルです。XAML で記述します。

ドロップダウン電卓にスタイルを設定するには、次の2つの方法があります。

それぞれの方法について説明します。

スタイルをキーで参照

GcDropDownCalculator コントロールのスタイルを定義し x:Key 属性でキーを設定します。そして、数値型セルの DropDownCalculatorStyle プロパティでキーを指定してスタイルを参照します。

次のサンプルコードは、ドロップダウン電卓の履歴表示を無効にします。

XAML
コードのコピー
<gss:GcSpreadSheet x:Name="GcSpreadSheet" HorizontalAlignment="Left" VerticalAlignment="Top">
    <gss:GcSpreadSheet.Resources>
        <Style TargetType="gss:GcDropDownCalculator" x:Key="MyCalculatorStyle">
            <Setter Property="IsShowHistory" Value="False"/>
        </Style>
    </gss:GcSpreadSheet.Resources>
    <gss:GcSpreadSheet.Sheets>
        <gss:SheetInfo RowCount="10" ColumnCount="5">
            <gss:SheetInfo.Columns>
                <gss:ColumnInfo Width="200">
                    <gss:ColumnInfo.CellType>
                        <gss_CellType:NumberCellType AllowDropDownOpen="True" DropDownButtonVisibility="AlwaysShow"
                                DropDownCalculatorStyle="{StaticResource MyCalculatorStyle}"/>
                    </gss:ColumnInfo.CellType>
                </gss:ColumnInfo>
            </gss:SheetInfo.Columns>
        </gss:SheetInfo>
    </gss:GcSpreadSheet.Sheets>
</gss:GcSpreadSheet>
メモ:セル型をXAMLで使用するには、次のような名前空間を宣言します。
xmlns:gss_CellType="clr-namespace:GrapeCity.Wpf.SpreadSheet.CellType;assembly=GrapeCity.Wpf.SpreadSheet.CellType"

次のサンプルコードは、コード ビハインドからスタイルを参照する例です。

C#
コードのコピー
NumberCellType num = new NumberCellType();
num.DropDownButtonVisibility = CellButtonVisibility.AlwaysShow;
num.DropDownCalculatorStyle = GcSpreadSheet.FindResource("MyCalculatorStyle") as Style;
GcSpreadSheet.Workbook.ActiveSheet.Columns[0].CellType = num;
GcSpreadSheet.Workbook.ActiveSheet.Columns[0].ColumnWidth = 300;                
Visual Basic
コードのコピー
Dim num As NumberCellType = New NumberCellType()
num.DropDownButtonVisibility = CellButtonVisibility.AlwaysShow
num.DropDownCalculatorStyle = TryCast(GcSpreadSheet.FindResource("MyCalculatorStyle"), Style)
GcSpreadSheet.Workbook.ActiveSheet.Columns(0).CellType = num
GcSpreadSheet.Workbook.ActiveSheet.Columns(0).ColumnWidth = 300

スタイルを暗黙的に適用

GcDropDownCalculator のスタイルを x:Key 属性なしで定義します。この場合、スタイルを定義したリソースの対象範囲内のすべての数値型セルにスタイルが暗黙的に適用されます。

次のサンプルコードは、ドロップダウン電卓の履歴表示を無効にします。この設定は、GcSpreadSheet コントロール内のすべての数値型セルに対して有効です。

XAML
コードのコピー
<gss:GcSpreadSheet x:Name="GcSpreadSheet" HorizontalAlignment="Left" VerticalAlignment="Top">
    <gss:GcSpreadSheet.Resources>
        <Style TargetType="gss:GcDropDownCalculator">
            <Setter Property="IsShowHistory" Value="False"/>
        </Style>
    </gss:GcSpreadSheet.Resources>
    <gss:GcSpreadSheet.Sheets>
        <gss:SheetInfo RowCount="10" ColumnCount="5">
            <gss:SheetInfo.Columns>
                <gss:ColumnInfo Width="200">
                    <gss:ColumnInfo.CellType>
                        <gss_CellType:NumberCellType AllowDropDownOpen="True" DropDownButtonVisibility="AlwaysShow"/>
                    </gss:ColumnInfo.CellType>
                </gss:ColumnInfo>
            </gss:SheetInfo.Columns>
        </gss:SheetInfo>
    </gss:GcSpreadSheet.Sheets>
</gss:GcSpreadSheet>
メモ:セル型をXAMLで使用するには、次のような名前空間を宣言します。
xmlns:gss_CellType="clr-namespace:GrapeCity.Wpf.SpreadSheet.CellType;assembly=GrapeCity.Wpf.SpreadSheet.CellType"
関連トピック