コンボボックス/マルチカラムコンボボックス型セルのドロップダウンリストの幅を設定する方法
対象製品
SPREAD for Windows Forms 8.0J
詳細
コンボボックス/マルチカラムコンボボックス型セルのドロップダウンリストの幅を設定するには、ListWidthプロパティを使用します。ListWidthプロパティは、ドロップダウンリストの幅をピクセル単位で設定しますが、-1または0の場合には特別な意味を持ち次のように動作します。
以下に、マルチカラムコンボボックス型セルを使用した簡単なサンプルを示しますが、コンボボックス型セルでも基本的な使い方は同様となります。
◎サンプルコード(VB)
◎サンプルコード(C#)
設定 | 説明 |
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
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;
}
{
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;
}
キーワード
セル型