コンボボックス/マルチカラムコンボボックス型セルのドロップダウンリストの幅を設定する方法

文書番号 : 38909     文書種別 : 使用方法     登録日 : 2015/06/29     最終更新日 : 2015/06/29
文書を印刷する
対象製品
SPREAD for Windows Forms 8.0J
詳細
コンボボックス/マルチカラムコンボボックス型セルのドロップダウンリストの幅を設定するには、ListWidthプロパティを使用します。ListWidthプロパティは、ドロップダウンリストの幅をピクセル単位で設定しますが、-1または0の場合には特別な意味を持ち次のように動作します。

設定説明
0最も幅の広い項目:リストは最も幅の広い項目の幅になります。
(マルチカラムコンボボックス型セルの場合には、各列を加算した幅になります。)
-1セル幅:リストはセルの幅になります。
nピクセル幅:n は任意の正の整数です。リストは n ピクセルの幅になります。

以下に、マルチカラムコンボボックス型セルを使用した簡単なサンプルを示しますが、コンボボックス型セルでも基本的な使い方は同様となります。

◎サンプルコード(VB)
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  Dim table As New DataTable()
  table.Columns.Add(New DataColumn("Code", Type.GetType("System.String")))
  table.Columns.Add(New DataColumn("Name", Type.GetType("System.String")))
  table.Columns.Add(New DataColumn("Kind", Type.GetType("System.String")))
  table.Rows.Add(New Object() {"0001", "リンゴ", "果物"})
  table.Rows.Add(New Object() {"0002", "メロン", "野菜"})
  table.Rows.Add(New Object() {"0003", "パインアップル", "果物"})

  ' ドロップダウンリストの各列幅を加算した幅に設定
  Dim multiCombo1 As New FarPoint.Win.Spread.CellType.MultiColumnComboBoxCellType()
  multiCombo1.DataSourceList = table
  multiCombo1.ListResizeColumns = FarPoint.Win.Spread.CellType.ListResizeColumns.FitWidestItem
  multiCombo1.ListWidth = 0
  FpSpread1.ActiveSheet.Columns(0).CellType = multiCombo1

  ' ドロップダウンリストをセルの幅に設定
  Dim multiCombo2 As New FarPoint.Win.Spread.CellType.MultiColumnComboBoxCellType()
  multiCombo2.DataSourceList = table
  multiCombo2.ListResizeColumns = FarPoint.Win.Spread.CellType.ListResizeColumns.FitWidestItem
  multiCombo2.ListWidth = -1
  FpSpread1.ActiveSheet.Columns(1).CellType = multiCombo2

  ' ドロップダウンリストを100ピクセルの幅に設定
  Dim multiCombo3 As New FarPoint.Win.Spread.CellType.MultiColumnComboBoxCellType()
  multiCombo3.DataSourceList = table
  multiCombo3.ListResizeColumns = FarPoint.Win.Spread.CellType.ListResizeColumns.FitWidestItem
  multiCombo3.ListWidth = 100
  FpSpread1.ActiveSheet.Columns(2).CellType = multiCombo3
End Sub


◎サンプルコード(C#)
private void Form1_Load(object sender, EventArgs e)
{
  DataTable table = new DataTable();
  table.Columns.Add("Code", Type.GetType("System.String"));
  table.Columns.Add("Name", Type.GetType("System.String"));
  table.Columns.Add("Kind", Type.GetType("System.String"));
  table.Rows.Add(100, "リンゴ", "果物");
  table.Rows.Add(200, "メロン", "野菜");
  table.Rows.Add(300, "パインアップル", "果物");

  // ドロップダウンリストの各列幅を加算した幅に設定
  FarPoint.Win.Spread.CellType.MultiColumnComboBoxCellType multiCombo1 = new FarPoint.Win.Spread.CellType.MultiColumnComboBoxCellType();
  multiCombo1.DataSourceList = table;
  multiCombo1.ListResizeColumns = FarPoint.Win.Spread.CellType.ListResizeColumns.FitWidestItem;
  multiCombo1.ListWidth = 0;
  fpSpread1.ActiveSheet.Columns[0].CellType = multiCombo1;

  // ドロップダウンリストをセルの幅に設定
  FarPoint.Win.Spread.CellType.MultiColumnComboBoxCellType multiCombo2 = new FarPoint.Win.Spread.CellType.MultiColumnComboBoxCellType();
  multiCombo2.DataSourceList = table;
  multiCombo2.ListResizeColumns = FarPoint.Win.Spread.CellType.ListResizeColumns.FitWidestItem;
  multiCombo2.ListWidth = -1;
  fpSpread1.ActiveSheet.Columns[1].CellType = multiCombo2;

  // ドロップダウンリストを100ピクセルの幅に設定
  FarPoint.Win.Spread.CellType.MultiColumnComboBoxCellType multiCombo3 = new FarPoint.Win.Spread.CellType.MultiColumnComboBoxCellType();
  multiCombo3.DataSourceList = table;
  multiCombo3.ListResizeColumns = FarPoint.Win.Spread.CellType.ListResizeColumns.FitWidestItem;
  multiCombo3.ListWidth = 100;
  fpSpread1.ActiveSheet.Columns[2].CellType = multiCombo3;
}
キーワード
セル型