Log In
Home
Support
Demos
Documentation
Blogs
Training
Webinars
[Expand]General Information
[Collapse]WinForms Controls
  Prerequisites
 [Expand]What's Installed
 [Expand]Build an Application
 [Expand]Controls and Libraries
 [Expand]Common Features
  Get More Help
 [Collapse]API Reference
  [Expand]DevExpress.DataAccess.UI.Design
  [Expand]DevExpress.DataAccess.UI.EntityFramework
  [Expand]DevExpress.DataAccess.UI.Excel
  [Expand]DevExpress.DataAccess.UI.Localization
  [Expand]DevExpress.DataAccess.UI.ObjectBinding
  [Expand]DevExpress.DataAccess.UI.Sql
  [Expand]DevExpress.DataAccess.UI.Wizard
  [Expand]DevExpress.DataAccess.UI.Wizard.Services
  [Expand]DevExpress.DataAccess.UI.Wizard.Views
  [Expand]DevExpress.DocumentView
  [Expand]DevExpress.DocumentView.Controls
  [Expand]DevExpress.LookAndFeel
  [Expand]DevExpress.LookAndFeel.Helpers
  [Expand]DevExpress.Skins
  [Expand]DevExpress.Snap
  [Expand]DevExpress.Snap.API.Native
  [Expand]DevExpress.Snap.Core
  [Expand]DevExpress.Snap.Core.API
  [Expand]DevExpress.Snap.Core.Fields
  [Expand]DevExpress.Snap.Core.Forms
  [Expand]DevExpress.Snap.Core.Options
  [Expand]DevExpress.Snap.Core.Services
  [Expand]DevExpress.Snap.Extensions
  [Expand]DevExpress.Snap.Extensions.Localization
  [Expand]DevExpress.Snap.Extensions.UI
  [Expand]DevExpress.Snap.Localization
  [Expand]DevExpress.Snap.Options
  [Expand]DevExpress.Snap.Services
  [Expand]DevExpress.Utils
  [Expand]DevExpress.Utils.Animation
  [Expand]DevExpress.Utils.Controls
  [Expand]DevExpress.Utils.Drawing
  [Expand]DevExpress.Utils.Menu
  [Expand]DevExpress.Utils.Taskbar
  [Expand]DevExpress.Utils.Taskbar.Core
  [Expand]DevExpress.Utils.UI.Localization
  [Expand]DevExpress.Utils.VisualEffects
  [Expand]DevExpress.Utils.Win
  [Expand]DevExpress.XtraBars
  [Expand]DevExpress.XtraBars.Alerter
  [Expand]DevExpress.XtraBars.Docking
  [Expand]DevExpress.XtraBars.Docking2010
  [Expand]DevExpress.XtraBars.Docking2010.Customization
  [Expand]DevExpress.XtraBars.Docking2010.Views
  [Expand]DevExpress.XtraBars.Docking2010.Views.NativeMdi
  [Expand]DevExpress.XtraBars.Docking2010.Views.Tabbed
  [Expand]DevExpress.XtraBars.Docking2010.Views.Widget
  [Expand]DevExpress.XtraBars.Docking2010.Views.WindowsUI
  [Expand]DevExpress.XtraBars.Localization
  [Expand]DevExpress.XtraBars.Navigation
  [Expand]DevExpress.XtraBars.Ribbon
  [Expand]DevExpress.XtraBars.Ribbon.Gallery
  [Expand]DevExpress.XtraBars.Ribbon.ViewInfo
  [Expand]DevExpress.XtraBars.ToastNotifications
  [Expand]DevExpress.XtraBars.Utils
  [Expand]DevExpress.XtraBars.WinRTLiveTiles
  [Expand]DevExpress.XtraCharts
  [Expand]DevExpress.XtraCharts.Designer
  [Expand]DevExpress.XtraCharts.Wizard
  [Expand]DevExpress.XtraDataLayout
  [Expand]DevExpress.XtraDiagram
  [Expand]DevExpress.XtraDiagram.Options
  [Collapse]DevExpress.XtraEditors
   [Expand]AreaChartRangeControlClientView Class
   [Expand]BarCodeControl Class
   [Expand]BaseButton Class
   [Expand]BaseCheckEdit Class
   [Expand]BaseCheckedListBoxControl Class
   [Expand]BaseControl Class
   [Expand]BaseDateControl Class
   [Expand]BaseEdit Class
   [Expand]BaseImageListBoxControl Class
   [Expand]BaseListBoxControl Class
   [Expand]BaseSpinEdit Class
   [Expand]BaseStyleControl Class
   [Expand]BlobBaseEdit Class
   [Expand]BreadCrumbEdit Class
   [Expand]BreadCrumbHistory Class
   [Expand]BreadCrumbHistoryItem Class
    BreadCrumbMode Enumeration
   [Expand]BreadCrumbNode Class
   [Expand]BreadCrumbNodeCollection Class
   [Expand]ButtonEdit Class
   [Expand]CalcEdit Class
   [Expand]ChartRangeControlClientBase Class
   [Expand]ChartRangeControlClientDataProvider Class
   [Expand]ChartRangeControlClientGridOptions Class
   [Expand]ChartRangeControlClientRange Class
   [Expand]ChartRangeControlClientView Class
   [Expand]CheckButton Class
   [Expand]CheckedComboBoxEdit Class
   [Expand]CheckEdit Class
   [Expand]CheckedListBoxControl Class
   [Expand]ClientDataSourceProviderCustomizeSeriesEventArgs Class
   [Expand]ColorDialogOptions Class
   [Expand]ColorEdit Class
   [Expand]ColorPickEdit Class
   [Expand]ColorPickEditBase Class
   [Expand]ColorPickEditTooltipShowingEventArgs Class
    ColorTooltipFormat Enumeration
   [Expand]ComboBox Class
   [Expand]ComboBoxEdit Class
   [Expand]ControlNavigator Class
   [Expand]ControlNavigatorButtonCollection Class
   [Expand]ControlNavigatorButtons Class
   [Expand]DataNavigator Class
   [Expand]DataNavigatorButtonCollection Class
   [Expand]DataNavigatorButtons Class
   [Expand]DateControl Class
   [Expand]DateEdit Class
   [Expand]DateTimeChartRangeControlClient Class
   [Expand]DateTimeChartRangeControlClientGridOptions Class
   [Expand]DateTimeChartRangeControlClientRange Class
    DropDownArrowStyle Enumeration
   [Expand]DropDownButton Class
   [Expand]FilterControl Class
    FilterEditorViewMode Enumeration
    FindMode Enumeration
   [Expand]FontEdit Class
    FormatCondition Enumeration
    FormatConditionAboveBelowType Enumeration
    FormatConditionAutomaticType Enumeration
   [Expand]FormatConditionCollectionBase Class
    FormatConditionComparisonType Enumeration
   [Expand]FormatConditionIconSet Class
   [Expand]FormatConditionIconSetIcon Class
   [Expand]FormatConditionRule2ColorScale Class
   [Expand]FormatConditionRule3ColorScale Class
   [Expand]FormatConditionRuleAboveBelowAverage Class
   [Expand]FormatConditionRuleAppearanceBase Class
   [Expand]FormatConditionRuleBase Class
    FormatConditionRuleChangeType Enumeration
   [Expand]FormatConditionRuleContains Class
   [Expand]FormatConditionRuleDataBar Class
   [Expand]FormatConditionRuleDateOccuring Class
   [Expand]FormatConditionRuleExpression Class
   [Expand]FormatConditionRuleIconSet Class
   [Expand]FormatConditionRuleMinMaxBase Class
   [Expand]FormatConditionRuleTopBottom Class
   [Expand]FormatConditionRuleUniqueDuplicate Class
   [Expand]FormatConditionRuleValue Class
    FormatConditionTopBottomType Enumeration
    FormatConditionUniqueDuplicateType Enumeration
    FormatConditionValueType Enumeration
   [Expand]FormatRuleBase Class
    FormBorderEffect Enumeration
   [Expand]GridLookUpEdit Class
   [Expand]GridLookUpEditBase Class
   [Expand]GroupCaptionCustomDrawEventArgs Class
    GroupCaptionCustomDrawEventHandler Delegate
   [Expand]GroupControl Class
    HighlightStyle Enumeration
    HotTrackSelectMode Enumeration
   [Expand]HScrollBar Class
   [Expand]HScrollBarBase Class
   [Expand]HyperLinkEdit Class
   [Expand]HyperlinkLabelControl Class
   [Expand]HyperlinkLabelControlAppearanceObject Class
   [Expand]HyperlinkLabelControlAppearanceOptions Class
    ImageAlignToText Enumeration
   [Expand]ImageComboBoxEdit Class
   [Expand]ImageEdit Class
   [Expand]ImageListBoxControl Class
    ImageLocation Enumeration
    LabelAutoSizeMode Enumeration
   [Expand]LabelControl Class
   [Expand]LabelControlAppearanceObject Class
   [Expand]LineChartRangeControlClientView Class
   [Expand]ListBoxControl Class
   [Expand]ListBoxDrawItemEventArgs Class
    ListBoxDrawItemEventHandler Delegate
   [Expand]LookUpEdit Class
   [Expand]LookUpEditBase Class
   [Expand]MarqueeProgressBarControl Class
   [Expand]MemoEdit Class
   [Expand]MemoExEdit Class
   [Expand]MRUEdit Class
   [Expand]NavigatorBase Class
   [Expand]NavigatorButton Class
   [Expand]NavigatorButtonBase Class
   [Expand]NavigatorButtonClickEventArgs Class
    NavigatorButtonClickEventHandler Delegate
   [Expand]NavigatorButtonCollectionBase Class
   [Expand]NavigatorButtonsBase Class
    NavigatorButtonsTextLocation Enumeration
    NavigatorButtonType Enumeration
   [Expand]NavigatorCustomButton Class
   [Expand]NavigatorCustomButtons Class
   [Expand]NavigatorExceptionEventArgs Class
    NavigatorExceptionEventHandler Delegate
   [Expand]NumericChartRangeControlClient Class
   [Expand]NumericChartRangeControlClientGridOptions Class
   [Expand]NumericChartRangeControlClientRange Class
   [Expand]NumericRangeControlClient Class
   [Expand]PanelControl Class
   [Expand]PickImage Class
   [Expand]PictureEdit Class
   [Expand]PopupBaseAutoSearchEdit Class
   [Expand]PopupBaseEdit Class
    PopupCloseMode Enumeration
   [Expand]PopupContainerControl Class
   [Collapse]PopupContainerEdit Class
     PopupContainerEdit Members
     PopupContainerEdit Constructor
    [Expand]PopupContainerEdit Properties
    [Expand]PopupContainerEdit Events
    [Expand]PopupContainerEdit Methods
    PopupFilterMode Enumeration
   [Expand]PopupGalleryEdit Class
   [Expand]PopupGalleryEditGallery Class
   [Expand]PopupPanelOptions Class
   [Expand]ProgressBarBaseControl Class
   [Expand]ProgressBarControl Class
   [Expand]RadioGroup Class
   [Expand]RangeControl Class
   [Expand]RangeControlClientBase Class
    RangeControlDateTimeGridAlignment Enumeration
   [Expand]RangeTrackBarControl Class
   [Expand]RatingControl Class
   [Expand]ScrollBarBase Class
    ScrollBarType Enumeration
    ScrollUIMode Enumeration
   [Expand]SearchControl Class
   [Expand]SearchLookUpEdit Class
   [Expand]SeparatorControl Class
   [Expand]SidePanel Class
   [Expand]SimpleButton Class
   [Expand]SimpleControl Class
   [Expand]SparklineEdit Class
   [Expand]SpinEdit Class
   [Expand]SplitContainerControl Class
    SplitFixedPanel Enumeration
    SplitPanelVisibility Enumeration
   [Expand]SplitterControl Class
   [Expand]StyleController Class
   [Expand]StyleFormatConditionBase Class
   [Expand]TextEdit Class
   [Expand]TileControl Class
    TileControlImageToTextAlignment Enumeration
    TileControlScrollMode Enumeration
   [Expand]TileGroup Class
   [Expand]TileGroupCollection Class
   [Expand]TileItem Class
   [Expand]TileItemAppearances Class
    TileItemCheckMode Enumeration
    TileItemClickEventHandler Delegate
   [Expand]TileItemCollection Class
    TileItemContentAlignment Enumeration
   [Expand]TileItemDragEventArgs Class
    TileItemDragEventHandler Delegate
   [Expand]TileItemElement Class
   [Expand]TileItemElementCollection Class
   [Expand]TileItemEventArgs Class
   [Expand]TileItemFrame Class
   [Expand]TileItemFrameCollection Class
    TileItemImageScaleMode Enumeration
    TileItemSize Enumeration
   [Expand]TimeEdit Class
   [Expand]TimeSpanEdit Class
   [Expand]ToggleSwitch Class
   [Expand]TokenEdit Class
   [Expand]TrackBarControl Class
   [Expand]TreeListLookUpEdit Class
    VistaCalendarViewStyle Enumeration
   [Expand]VScrollBar Class
   [Expand]VScrollBarBase Class
    WaitAnimationOptions Enumeration
   [Expand]WindowsFormsSettings Class
   [Expand]XtraDialog Class
   [Expand]XtraFolderBrowserDialog Class
   [Expand]XtraForm Class
   [Expand]XtraInputBox Class
   [Expand]XtraInputBoxArgs Class
   [Expand]XtraMessageBox Class
   [Expand]XtraOpenFileDialog Class
   [Expand]XtraPanel Class
   [Expand]XtraSaveFileDialog Class
   [Expand]XtraScrollableControl Class
   [Expand]XtraUserControl Class
   [Expand]ZoomTrackBarControl Class
  [Expand]DevExpress.XtraEditors.ButtonPanel
  [Expand]DevExpress.XtraEditors.Calendar
  [Expand]DevExpress.XtraEditors.Camera
  [Expand]DevExpress.XtraEditors.Container
  [Expand]DevExpress.XtraEditors.Controls
  [Expand]DevExpress.XtraEditors.CustomEditor
  [Expand]DevExpress.XtraEditors.DXErrorProvider
  [Expand]DevExpress.XtraEditors.Filtering
  [Expand]DevExpress.XtraEditors.Mask
  [Expand]DevExpress.XtraEditors.Persistent
  [Expand]DevExpress.XtraEditors.Repository
  [Expand]DevExpress.XtraEditors.ViewInfo
  [Expand]DevExpress.XtraFilterEditor
  [Expand]DevExpress.XtraGauges.Presets.Styles
  [Expand]DevExpress.XtraGauges.Win
  [Expand]DevExpress.XtraGauges.Win.Base
  [Expand]DevExpress.XtraGauges.Win.Gauges.Circular
  [Expand]DevExpress.XtraGauges.Win.Gauges.Digital
  [Expand]DevExpress.XtraGauges.Win.Gauges.Linear
  [Expand]DevExpress.XtraGauges.Win.Gauges.State
  [Expand]DevExpress.XtraGrid
  [Expand]DevExpress.XtraGrid.Columns
  [Expand]DevExpress.XtraGrid.EditForm
  [Expand]DevExpress.XtraGrid.FilterEditor
  [Expand]DevExpress.XtraGrid.Localization
  [Expand]DevExpress.XtraGrid.Views.BandedGrid
  [Expand]DevExpress.XtraGrid.Views.BandedGrid.ViewInfo
  [Expand]DevExpress.XtraGrid.Views.Base
  [Expand]DevExpress.XtraGrid.Views.Base.ViewInfo
  [Expand]DevExpress.XtraGrid.Views.Card
  [Expand]DevExpress.XtraGrid.Views.Card.ViewInfo
  [Expand]DevExpress.XtraGrid.Views.Grid
  [Expand]DevExpress.XtraGrid.Views.Grid.ViewInfo
  [Expand]DevExpress.XtraGrid.Views.Layout
  [Expand]DevExpress.XtraGrid.Views.Layout.Events
  [Expand]DevExpress.XtraGrid.Views.Layout.ViewInfo
  [Expand]DevExpress.XtraGrid.Views.Printing
  [Expand]DevExpress.XtraGrid.Views.Tile
  [Expand]DevExpress.XtraGrid.Views.WinExplorer
  [Expand]DevExpress.XtraGrid.WinExplorer
  [Expand]DevExpress.XtraLayout
  [Expand]DevExpress.XtraLayout.Customization
  [Expand]DevExpress.XtraLayout.HitInfo
  [Expand]DevExpress.XtraLayout.Localization
  [Expand]DevExpress.XtraLayout.Utils
  [Expand]DevExpress.XtraMap
  [Expand]DevExpress.XtraMap.Printing
  [Expand]DevExpress.XtraNavBar
  [Expand]DevExpress.XtraNavBar.ViewInfo
  [Expand]DevExpress.XtraPdfViewer
  [Expand]DevExpress.XtraPdfViewer.Commands
  [Expand]DevExpress.XtraPdfViewer.Localization
  [Expand]DevExpress.XtraPivotGrid
  [Expand]DevExpress.XtraPivotGrid.Data
  [Expand]DevExpress.XtraPrinting
  [Expand]DevExpress.XtraPrinting.Control
  [Expand]DevExpress.XtraPrinting.Preview
  [Expand]DevExpress.XtraPrintingLinks
  [Expand]DevExpress.XtraReports.UI
  [Expand]DevExpress.XtraRichEdit
  [Expand]DevExpress.XtraRichEdit.Commands
  [Expand]DevExpress.XtraRichEdit.Export
  [Expand]DevExpress.XtraRichEdit.Import
  [Expand]DevExpress.XtraRichEdit.Localization
  [Expand]DevExpress.XtraRichEdit.Menu
  [Expand]DevExpress.XtraScheduler
  [Expand]DevExpress.XtraScheduler.Drawing
  [Expand]DevExpress.XtraScheduler.Printing
  [Expand]DevExpress.XtraScheduler.Reporting
  [Expand]DevExpress.XtraScheduler.Reporting.UI
  [Expand]DevExpress.XtraScheduler.Services
  [Expand]DevExpress.XtraScheduler.Services.Implementation
  [Expand]DevExpress.XtraScheduler.UI
  [Expand]DevExpress.XtraSpellChecker
  [Expand]DevExpress.XtraSpellChecker.Localization
  [Expand]DevExpress.XtraSplashForm
  [Expand]DevExpress.XtraSplashScreen
  [Expand]DevExpress.XtraSpreadsheet
  [Expand]DevExpress.XtraSpreadsheet.Services
  [Expand]DevExpress.XtraTab
  [Expand]DevExpress.XtraTab.Buttons
  [Expand]DevExpress.XtraTab.ViewInfo
  [Expand]DevExpress.XtraTabbedMdi
  [Expand]DevExpress.XtraToolbox
  [Expand]DevExpress.XtraTreeList
  [Expand]DevExpress.XtraTreeList.Columns
  [Expand]DevExpress.XtraTreeList.Data
  [Expand]DevExpress.XtraTreeList.Localization
  [Expand]DevExpress.XtraTreeList.Menu
  [Expand]DevExpress.XtraTreeList.Nodes
  [Expand]DevExpress.XtraTreeList.Nodes.Operations
  [Expand]DevExpress.XtraTreeList.StyleFormatConditions
  [Expand]DevExpress.XtraTreeMap
  [Expand]DevExpress.XtraVerticalGrid
  [Expand]DevExpress.XtraVerticalGrid.Events
  [Expand]DevExpress.XtraVerticalGrid.Localization
  [Expand]DevExpress.XtraVerticalGrid.Rows
  [Expand]DevExpress.XtraWaitForm
  [Expand]DevExpress.XtraWizard
[Expand]ASP.NET Controls and MVC Extensions
[Expand]ASP.NET Bootstrap Controls
[Expand]ASP.NET Core Bootstrap Controls
[Expand]WPF Controls
[Expand]Xamarin Controls
[Expand]Windows 10 App Controls
[Expand]Document Server
[Expand]Reporting
[Expand]Report Server
[Expand]Dashboard
[Expand]eXpressApp Framework
[Expand]CodeRush
[Expand]CodeRush Classic
[Expand]Cross-Platform Core Libraries
[Expand]Tools and Utilities
 End-User Documentation

PopupContainerEdit Class

The editor that allows you to display any controls within its popup window.

Namespace:DevExpress.XtraEditors
Assembly:DevExpress.XtraEditors.v17.2.dll

Expanded Syntax

Expanded Remarks

You can use the PopupContainerEdit control to implement a dropdown editor displaying custom controls within its popup window. The image below shows a sample PopupContainerEdit editor with several editors and buttons displayed in the popup window:

By default, the PopupContainerEdit control doesn't provide any dropdown panel, and so clicking its dropdown button does nothing. To create a dropdown panel displaying custom controls, do the following:

  1. Create a PopupContainerControl panel, which will serve as a container for custom controls.
  2. Add any custom controls to the created panel.
  3. Bind the panel to the PopupContainerEdit control via its PopupContainerEdit.Properties.PopupControl property (see the RepositoryItemPopupContainerEdit.PopupControl topic). Once assigned, the panel is not visible on the form at runtime and is only displayed as the bound editor's popup window.

Typically, when an end-user modifies the state of custom controls within the dropdown (for instance, modifies their text), you need to update the PopupContainerEdit editor's edit value and/or display text. Two events are provided for this purpose: QueryResultValue (RepositoryItemPopupContainerEdit.QueryResultValue) and QueryDisplayText (RepositoryItemPopupContainerEdit.QueryDisplayText), which fire when the popup window is about to be closed.

To update the editor's edit value with respect to the state of controls within its popup window, handle the RepositoryItemPopupContainerEdit.QueryResultValue event. By default, the display text will be generated automatically based on the current edit value (the ToString() method is called to generate the default text representation). However, it's possible to provide custom display text by handling the RepositoryItemPopupContainerEdit.QueryDisplayText event.

In specific cases, you may need to initialize controls within the editor's popup window (depending on the current edit value). To initialize the controls when the popup window is about to be invoked, handle the PopupBaseEdit.QueryPopUp (or RepositoryItemPopupBase.QueryPopUp) event.

Note

When a form containing a PopupContainerControl is disposed of by calling the form's Dispose method, the PopupContainerControl.Dispose method may not be called. This takes place when the PopupContainerControl has been opened during the form's lifetime. To free all the resources, you need to manually call the PopupContainerControl's Dispose method. For instance, use the following code.

See the Popup Container Editor topic for more information.

Expanded Example

The following example creates a PopupContainerEdit class instance and displays a RichTextBox control in the popup window.

First, we create and customize a RichTextBox control. Then, a PopupContainerControl object is created and this will contain the RichTextBox. To display the PopupContainerControl in the popup window, it should be assigned to the RepositoryItemPopupContainerEdit.PopupControl property.

Expanded Inheritance Hierarchy

System.Object
    System.MarshalByRefObject
       System.ComponentModel.Component
          System.Windows.Forms.Control
             ControlBase
                BaseControl
                   BaseEdit
                      TextEdit
                         ButtonEdit
                            PopupBaseEdit
                               PopupContainerEdit
                                  AppointmentResourcesEdit
                                  CheckedComboBoxEdit
                                  ResourcesPopupCheckedListBoxControl

Expanded See Also

How would you rate this topic?​​​​​​​