ListBoxFormControl Interface
List box form control.
Namespace: DevExpress.Spreadsheet
Assembly: DevExpress.Spreadsheet.v24.1.Core.dll
NuGet Package: DevExpress.Spreadsheet.Core
Declaration
public interface ListBoxFormControl :
FormControl,
Shape,
FloatingObject,
ShapeFormatBase,
DataSelectorFormControl,
LinkedCellFormControl,
ShadedFormControl
Related API Members
The following members return ListBoxFormControl objects:
Remarks
Create a List Box Form Control
The code sample below creates a list box control:
using DevExpress.Spreadsheet;
Workbook workbook = new Workbook();
workbook.LoadDocument("Document.xlsx");
var cellRange = spreadsheetControl.Document.Worksheets[0].Range["B2:D2"];
var listBoxControl = formControls.AddListBox(cellRange);
listBoxControl.DropDownLines = 3;
listBoxControl.SourceRange = spreadsheetControl.Document.Worksheets[0].Range["E2:E6"];
listBoxControl.SelectedIndex = 1;
Note
The FormControlCollection.AddListBox method call adds a new item to both FormControlCollection and ShapeCollection.
Obtain List Box Form Controls
The Worksheet.FormControls property obtains all form controls in a worksheet. You can use one of the following ways to obtain a specific form control:
- Access the item in the collection by its index
- Call the FormControlCollection.GetFormControlsByName method
- Call the FormControlCollection.GetFormControlById method
The FormControl.Id and FormControl.Name properties return the form control’s identifier and name.
Modify Check List Box Form Controls
Use the ListBoxFormControl
class properties to change list box parameters. The code sample below obtains all list boxes and enables 3D shading and multiple selection:
using DevExpress.Spreadsheet;
using System.Linq;
Workbook workbook = new Workbook();
workbook.LoadDocument("Document.xlsx");
var formControls = workbook.Worksheets[0].FormControls;
var listBoxes = formControls.Where(formControl => formControl.FormControlType == FormControlType.ListBox).Cast<ListBoxFormControl>();
foreach (ListBoxFormControl listBox in listBoxes) {
listBox.Shading3D = true;
listBox.SelectionMode = FormControlSelectionMode.Extended;
}
Remove List Box Form Controls
Call the FormControlCollection.Remove or FormControlCollection.RemoveAt method to remove a form control. The FormControlCollection.Clear() method removes all form controls from a worksheet.
The code sample below removes all list boxes from a worksheet:
Workbook workbook = new Workbook();
workbook.LoadDocument("Document.xlsx");
var formControls = workbook.Worksheets[0].FormControls;
for (int i = formControls.Count - 1; i >= 0; i--) {
if (formControls[i].FormControlType == FormControlType.ListBox)
formControls.RemoveAt(i);
}
Limitations
The Form Control API subset ships with the following list box limitations:
- You cannot change list box value in the Spreadsheet Control for WinForms and WPF
- Spreadsheet Control for WinForms and WPF does not display list box values from a source range
- ShapeFormatBase.Fill, ShapeFormatBase.Outline, and ShapeText property returns
null
forListBoxFormControl
.