Skip to end of metadata
Go to start of metadata

Remarks

UXStackButton is an advanced button control that represents one or more items in the form of stack layout. This stack layout is created using UXPopup as its fundamental architecture.

Because of this, the dropdown menu of UXStackButton has the same features that UXPopup provides such as positioning, hide and display animation, etc.

XAML

Working with DisplayAnimation Property, EnableFadeInAnimation Property, EnableFadeOutAnimation Property and HideAnimation Property

UXStackButton also has similiar properties as UXPopup that controls the hide and display stack animation when the StackMode is set to GridStyle or MenuStyle. The following are the properties that controls the dropdown menu animation.

Although with these properties you can control each visual effects individually, it is advised not to mix match the animations for DisplayAnimation or HideAnimation, except if you want to disable one of the animation by setting the DisplayAnimation or HideAnimation property to None.

Working with IsOpen Property

To open or display stack items of UXStackButton, you can simply set the IsOpen property to True. Alternatively you can click the UXStackButton to set the IsOpen property.

Similiar with other button, UXStackButton also has ClickMode property that determines the action that triggers the click event. When the ClickMode property is set to HoverUXStackButton will display the stack items when its being hovered.

XAML

Working with StackDockPosition Property

UXStackButton stack position is determined by the StackDockPosition property. When StackDockPosition is set to Bottom, the stack items will be shown upwards and vice versa.

The following example shows different StackDockPosition and their effects.

XAML

Working with StackGridTemplate Property

The content of UXStackButton is not necessary collection of UXStackItem. Using GridStyle as StackMode of UXStackButton you can use StackGridTemplate instead specifying items for its stack content.

The following example shows how to use custom content for UXStackButton using StackGridTemplate.

XAML

Working with StackMode Property

You can change the stack mode of a UXStackButton using StackMode property. There are three different stack modes they are ArcStyle, GridStyle and MenuStyle. Each of the mode has different kind of settings that specific for each visual effects.

Arc Style

ArcStyle shows the items of UXStackButton in arc representation.

XAML

The following are list of properties you can customize when using ArcStyle mode.

Grid Style

GridStyle shows the items of UXStackButton within a grid panel that hosted inside a CallOut.

XAML

The following are list of properties you can customize when using GridStyle mode.

Understanding Grid Layout

The grid layout is driven from StackGridMode property along with StackGridColumn and StackGridRow. There are six types of grid layout that you can choose from, they are.

  • AutoColumn
    The items are arranged in a single row with infinite columns. StackGridColumn and StackGridRow is ignored in this mode.
  • AutoRow
    The items are arranged in a single column with infinite rows. StackGridColumn and StackGridRow is ignored in this mode.
  • MaxColumn
    The items are arranged in a row until it reach the number of maximum column defined in StackGridColumn. When it happens it will create new rows until all items is arranged.
  • MaxRow
    The items are arranged in a column until it reach the number of maximum row defined in StackGridRow. When it happens it will create new columns until all items is arranged.
  • DynamicGrid
    The items are arranged in a layout determined by StackGridColumn and StackGridRow. If the total number of item is less than the available space, it will shrink the empty spaces. On contrary if the total number of item is larger than the available space the layout will not grow like in MaxColumn or MaxRow modes, instead it will provide scroll bar to scroll the items.
  • Grid
    The items are arranged in a fix layout determined by StackGridColumn and StackGridRow. Unlike in DynamicGrid, if the total number of item is less than the available space, the layout will not shrink.

Menu Style

MenuStyle shows the items of UXStackButton within a menu panel that hosted inside a CallOut.

XAML

Working with StackTotalDisplayItem Property

UXStackButton has an Icon property that you can assign to an image source which will indicates what the button represent. Alternatively you can also display the stacking item that belongs to UXStackButton using StackTotalDisplayItem.

The following example shows how to display the stack items to represent the UXStackButton.

Example Title

Definition

public class UXStackButton : UXButtonItems, ITransformInfo

Summary

The following table summarizes the members exposed in this class.

Public Constructors

UXStackButton Constructor()Initializes a new instance of the UXStackButton class.

Public Properties

AllowDropItemGets or sets a value that determines whether external item can be dropped to the panel.
AllowMoveItemGets or sets a value that determines whether the item can be moved.
AllowRemoveItemGets or sets a value that determines whether the item can be removed.
AllowReorderItemGets or sets a value that determines whether external item can be dropped to the panel.
AnimatePointerModeGets or sets the value that determines the behavior of UXCallOut pointer animation when its repositioned.
AutoShowLatencyGets or sets the latency before auto show is executed. Note: ClickMode must be Hover.
CallOutStyleGets or sets the call out style.
ContentReflectorGets or sets the content reflector.
DisplayAnimationGets or sets a value that determines the display animation.
DragModeGets or sets the dragging behavior.
DropableTargetsGets the collection of dropable target names.
EnableFadeInAnimationGets or sets a value that determines whether the fade animation is enabled.
EnableFadeOutAnimationGets or sets a value that determines whether the fade animation is enabled.
EnableMouseOverStateGets or sets a value that determine whether mouse over state is enabled at StackItem level.
EnableReflectionGets or sets a value that determine whether reflection is enabled.
EnableStackGridFadeAnimationGets or sets a value that determines whether stack grid items fading animation is enabled.
HideAnimationGets or sets a value that determines the hide animation.
ImageLoaderTextVisibilityGets or sets a value that determines whether image loader progress text is shown.
IsOpenGets or sets a value that determines whether the UStackMenu is opened.
LatencyGets or sets a value that determine the latency before the item collection is re-adjusted when an item is inserted, moved or removed.
ReflectionPositionGets or sets a value that determine the position of the reflection.
ReflectionVisibilityGets or sets a value that determine the visibility of the reflection.
SelectedIndexGets or sets the current selected index.
SelectedItemGets or sets the current selected item.
SelectedValueGets the current selected value. Only applicable if selected value path is specified.
SelectedValuePathGets or sets the selected value path.
StackAnimationSpeedRatioGets or sets the stack animation speed ratio.
StackArcDegreeGets or sets the arc style degree when stack mode is set to ArcStyle.
StackArcDirectionGets or sets the arc style direction when stack mode is set to ArcStyle.
StackArcItemHeightGets or sets the stack arc item height.
StackArcItemWidthGets or sets the stack arc item width.
StackArcLaunchOffsetGets or sets the arc style launch offset when stack mode is set to ArcStyle.
StackArcTextOffsetGets or sets the arc text ofset position when stack mode is set to ArcStyle.
StackArcTextPositionGets or sets the arc text position when stack mode is set to ArcStyle.
StackDockPositionGets or sets a value that indicates the dock position of the stack menu.
StackGridColumnGets or sets the number of grid column when stack mode is set to GridStyle.
StackGridFooterTextGets or sets the stack grid footer text.
StackGridHeaderTextGets or sets the stack grid header text.
StackGridItemHeightGets or sets the stack grid item height.
StackGridItemMarginGets or sets the margin between stack grid item.
StackGridItemWidthGets or sets the stack grid item width.
StackGridModeGets or sets stack grid mode style."
StackGridPaddingGets or sets the stack grid padding.
StackGridRowGets or sets the number of grid row when stack mode is set to GridStyle.
StackGridTemplateGets or sets the content template to be displayed in stack grid mode.
StackIndicatorSourceGets or sets the stack indicator source that will be shown when stack menu is opened.
StackMenuElementGets the stack menu element.
StackMenuItemHeightGets or sets the stack menu item height.
StackMenuItemWidthGets or sets the stack menu item width.
StackMenuStyleGets or sets stack menu style.
StackModeGets or sets the stack mode.
StackTotalDisplayItemGets or sets a value that determines the total number of sub items that will be visible when stack mode is set to ArcStyle and the stack menu is collapsed.
StaysOpenGets or sets a value that determines whether the popup stays open regardless the hide command.
TextGets or sets the stack button text.
TransformInfoGets or sets transformable info.
UseImageLoaderGets or sets a value that determines whether the image loader used to download the image.

Protected Properties

ProductProduct Info.

Fields

AllowDropItemPropertyIdentifies the AllowDropItem dependency property.
AllowMoveItemPropertyIdentifies the AllowMoveItem dependency property.
AllowRemoveItemPropertyIdentifies the AllowRemoveItem dependency property.
AllowReorderItemPropertyIdentifies the AllowRemoveItem dependency property.
AnimatePointerModePropertyIdentifies the AnimatePointerMode dependency property.
AutoShowLatencyPropertyIdentifies the AutoShowLatency dependency property.
CallOutStylePropertyIdentifies the CallOutStyle dependency property.
DisplayAnimationPropertyIdentifies the DisplayAnimation dependency property.
DragModePropertyIdentifies the DragMode dependency property.
EnableFadeInAnimationPropertyIdentifies the EnableFadeAnimation dependency property.
EnableFadeOutAnimationPropertyIdentifies the EnableFadeAnimation dependency property.
EnableMouseOverStatePropertyIdentifies the EnableMouseOverState dependency property.
EnableReflectionPropertyIdentifies the EnableReflection dependency property.
EnableStackGridFadeAnimationPropertyIdentifies the EnableStackGridFadeAnimation dependency property.
HideAnimationPropertyIdentifies the HideAnimation dependency property.
ImageLoaderTextVisibilityPropertyIdentifies the ShowImageLoaderProgressText dependency property.
IsOpenPropertyIdentifies the IsOpen dependency property.
LatencyPropertyIdentifies the Latency dependency property.
ReflectionPositionPropertyIdentifies the ReflectionPosition dependency property.
ReflectionVisibilityPropertyIdentifies the ReflectionVisibility dependency property.
SelectedIndexPropertyIdentifies the SelectedIndex dependency property.
SelectedItemPropertyIdentifies the SelectedItem dependency property.
SelectedValuePathPropertyIdentifies the SelectedValuePath dependency property.
SelectedValuePropertyIdentifies the SelectedValue dependency property.
StackAnimationSpeedRatioPropertyIdentifies the StackAnimationSpeedRatio dependency property.
StackArcDegreePropertyIdentifies the StackArcDegree dependency property.
StackArcDirectionPropertyIdentifies the StackArcDirection dependency property.
StackArcItemHeightPropertyIdentifies the StackArcItemHeight dependency property.
StackArcItemWidthPropertyIdentifies the StackArcItemWidth dependency property.
StackArcLaunchOffsetPropertyIdentifies the StackArcLaunchOffset dependency property.
StackArcTextOffsetPropertyIdentifies the StackArcTextOffset dependency property.
StackArcTextPositionPropertyIdentifies the StackArcTextPosition dependency property.
StackDockPositionPropertyIdentifies the StackDockPosition dependency property.
StackGridColumnPropertyIdentifies the StackGridColumn dependency property.
StackGridFooterTextPropertyIdentifies the StackGridFooterText dependency property.
StackGridHeaderTextPropertyIdentifies the StackGridHeaderText dependency property.
StackGridItemHeightPropertyIdentifies the StackGridItemHeight dependency property.
StackGridItemMarginPropertyIdentifies the StackGridItemMargin dependency property.
StackGridItemWidthPropertyIdentifies the StackGridItemWidth dependency property.
StackGridModePropertyIdentifies the StackGridMode dependency property.
StackGridPaddingPropertyIdentifies the StackGridPadding dependency property.
StackGridRowPropertyIdentifies the StackGridRow dependency property.
StackGridTemplatePropertyIdentifies the StackGridTemplate dependency property.
StackIndicatorSourcePropertyIdentifies the StackIndicatorSource dependency property.
StackMenuItemHeightPropertyIdentifies the StackMenuItemHeight dependency property.
StackMenuItemWidthPropertyIdentifies the StackMenuItemWidth dependency property.
StackMenuStylePropertyIdentifies the StackMenuStyle dependency property.
StackModePropertyIdentifies the StackMode dependency property.
StackTotalDisplayItemPropertyIdentifies the StackTotalDisplayItem dependency property.
StaysOpenPropertyIdentifies the StaysOpen dependency property.
TextPropertyIdentifies the Text dependency property.
UseImageLoaderPropertyIdentifies the UseImageLoader dependency property.

Public Methods

DetachedEventHandlers()Detach built-in event handlers from control templates. Call this method if necessary.
Dispose() 
InitializeTemplates()Initializes control templates.
InitTransformInfo()Initialize transformable info.
OnApplyTemplate()Builds the visual tree for the UXStackButton when a new template is applied.
RefreshContentLayout()Refresh the content display.
ResetAutoShowTimer()Reset auto show timer.
ResetState()Reset state.
TransformObject(FrameworkElement)Transform drag drop object to UXStackItem.
UpdatePosition()Update stack position.

Protected Methods

ChangeVisualState(bool)Overrides ChangeVisualState implementation for dropdown button.
DisplayModeChanged()Called when the DisplayMode property is changed.
IsOpenPropertyChanged(DependencyPropertyChangedEventArgs)Called when the value of IsOpen property changes.
ItemsControlFactory()Items control factory
Menu_Closed(object, ISRoutedEventArgs)On stack menu closed.
Menu_Opened(object, ISRoutedEventArgs)On stack menu opened.
MenuStateChanged(bool)On stack menu state changed.
OnClick()Called before the Click event occurs.
OnIsPressedChanged(DependencyPropertyChangedEventArgs)Called when the value of IsPressed property changes.
OnKeyDown(KeyEventArgs)Called before the KeyDown event occurs.
OnLostFocus(RoutedEventArgs)Called before the LostFocus event occurs.
OnLostKeyboardFocus(KeyboardFocusChangedEventArgs)Inheritors should override this method to handle custom logic for LostKeyboardFocus event.
OnMouseEnter(MouseEventArgs)Called before MouseEnter event occurs.
OnMouseLeave(MouseEventArgs)Called before the MouseLeave event occurs.
OnMouseMove(MouseEventArgs)Called before the MouseMove event occurs.
PerformClick()Perform button click.

Events

StackClosedOccurs when the stack menu of the button is closed.
StackOpenedOccurs when the stack menu of the button is opened.

Public Constructors

public UXStackButton()

Initializes a new instance of the UXStackButton class.

Public Properties

public bool AllowDropItem { get; set; }

Gets or sets a value that determines whether external item can be dropped to the panel.

public bool AllowMoveItem { get; set; }

Gets or sets a value that determines whether the item can be moved.

public bool AllowRemoveItem { get; set; }

Gets or sets a value that determines whether the item can be removed.

public bool AllowReorderItem { get; set; }

Gets or sets a value that determines whether external item can be dropped to the panel.

public AnimatePointerMode AnimatePointerMode { get; set; }

Gets or sets the value that determines the behavior of UXCallOut pointer animation when its repositioned.

public double AutoShowLatency { get; set; }

Gets or sets the latency before auto show is executed. Note: ClickMode must be Hover.

public Style CallOutStyle { get; set; }

Gets or sets the call out style.

public ContentReflector ContentReflector { get; }

Gets or sets the content reflector.

public PopupAnimation DisplayAnimation { get; set; }

Gets or sets a value that determines the display animation.

public DragMode DragMode { get; set; }

Gets or sets the dragging behavior.

public ObservableCollection<string> DropableTargets { get; }

Gets the collection of dropable target names.

public bool EnableFadeInAnimation { get; set; }

Gets or sets a value that determines whether the fade animation is enabled.

public bool EnableFadeOutAnimation { get; set; }

Gets or sets a value that determines whether the fade animation is enabled.

public bool EnableMouseOverState { get; set; }

Gets or sets a value that determine whether mouse over state is enabled at StackItem level.

public bool EnableReflection { get; set; }

Gets or sets a value that determine whether reflection is enabled.

public bool EnableStackGridFadeAnimation { get; set; }

Gets or sets a value that determines whether stack grid items fading animation is enabled.

public PopupAnimation HideAnimation { get; set; }

Gets or sets a value that determines the hide animation.

public Visibility ImageLoaderTextVisibility { get; set; }

Gets or sets a value that determines whether image loader progress text is shown.

public bool IsOpen { get; set; }

Gets or sets a value that determines whether the UStackMenu is opened.

Remarks

To open or display stack items of UXStackButton, you can simply set the IsOpen property to True. Alternatively you can click the UXStackButton to set the IsOpen property. Similiar with other button, UXStackButton also has ClickMode property that determines the action that triggers the click event. When the ClickMode property is set to Hover, UXStackButton will display the stack items when its being hovered.

 

public double Latency { get; set; }

Gets or sets a value that determine the latency before the item collection is re-adjusted when an item is inserted, moved or removed.

public Dock ReflectionPosition { get; set; }

Gets or sets a value that determine the position of the reflection.

public Visibility ReflectionVisibility { get; set; }

Gets or sets a value that determine the visibility of the reflection.

public int SelectedIndex { get; set; }

Gets or sets the current selected index.

public object SelectedItem { get; set; }

Gets or sets the current selected item.

public object SelectedValue { get; set; }

Gets the current selected value. Only applicable if selected value path is specified.

public string SelectedValuePath { get; set; }

Gets or sets the selected value path.

public double StackAnimationSpeedRatio { get; set; }

Gets or sets the stack animation speed ratio.

public double StackArcDegree { get; set; }

Gets or sets the arc style degree when stack mode is set to ArcStyle.

public StackArcDirection StackArcDirection { get; set; }

Gets or sets the arc style direction when stack mode is set to ArcStyle.

public double StackArcItemHeight { get; set; }

Gets or sets the stack arc item height.

public double StackArcItemWidth { get; set; }

Gets or sets the stack arc item width.

public double StackArcLaunchOffset { get; set; }

Gets or sets the arc style launch offset when stack mode is set to ArcStyle.

public double StackArcTextOffset { get; set; }

Gets or sets the arc text ofset position when stack mode is set to ArcStyle.

public TextPosition StackArcTextPosition { get; set; }

Gets or sets the arc text position when stack mode is set to ArcStyle.

public Dock StackDockPosition { get; set; }

Gets or sets a value that indicates the dock position of the stack menu.

public int StackGridColumn { get; set; }

Gets or sets the number of grid column when stack mode is set to GridStyle.

public string StackGridFooterText { get; set; }

Gets or sets the stack grid footer text.

public string StackGridHeaderText { get; set; }

Gets or sets the stack grid header text.

public double StackGridItemHeight { get; set; }

Gets or sets the stack grid item height.

public Thickness StackGridItemMargin { get; set; }

Gets or sets the margin between stack grid item.

public double StackGridItemWidth { get; set; }

Gets or sets the stack grid item width.

public StackGridMode StackGridMode { get; set; }

Gets or sets stack grid mode style."

public Thickness StackGridPadding { get; set; }

Gets or sets the stack grid padding.

public int StackGridRow { get; set; }

Gets or sets the number of grid row when stack mode is set to GridStyle.

public DataTemplate StackGridTemplate { get; set; }

Gets or sets the content template to be displayed in stack grid mode.

public ImageSource StackIndicatorSource { get; set; }

Gets or sets the stack indicator source that will be shown when stack menu is opened.

public UXStackMenu StackMenuElement { get; }

Gets the stack menu element.

public double StackMenuItemHeight { get; set; }

Gets or sets the stack menu item height.

public double StackMenuItemWidth { get; set; }

Gets or sets the stack menu item width.

public Style StackMenuStyle { get; set; }

Gets or sets stack menu style.

public StackMode StackMode { get; set; }

Gets or sets the stack mode.

public int StackTotalDisplayItem { get; set; }

Gets or sets a value that determines the total number of sub items that will be visible when stack mode is set to ArcStyle and the stack menu is collapsed.

Remarks

UXStackButton has an Icon property that you can assign to an image source which will indicates what the button represent. Alternatively you can also display the stacking item that belongs to UXStackButton using StackTotalDisplayItem.

 

public bool StaysOpen { get; set; }

Gets or sets a value that determines whether the popup stays open regardless the hide command.

public string Text { get; set; }

Gets or sets the stack button text.

public TransformInfo TransformInfo { get; set; }

Gets or sets transformable info.

public bool UseImageLoader { get; set; }

Gets or sets a value that determines whether the image loader used to download the image.

Protected Properties

protected ProductInfo Product { get; }

Product Info.

Fields

public static readonly DependencyProperty AllowDropItemProperty

Identifies the AllowDropItem dependency property.

public static readonly DependencyProperty AllowMoveItemProperty

Identifies the AllowMoveItem dependency property.

public static readonly DependencyProperty AllowRemoveItemProperty

Identifies the AllowRemoveItem dependency property.

public static readonly DependencyProperty AllowReorderItemProperty

Identifies the AllowRemoveItem dependency property.

public static readonly DependencyProperty AnimatePointerModeProperty

Identifies the AnimatePointerMode dependency property.

public static readonly DependencyProperty AutoShowLatencyProperty

Identifies the AutoShowLatency dependency property.

public static readonly DependencyProperty CallOutStyleProperty

Identifies the CallOutStyle dependency property.

public static readonly DependencyProperty DisplayAnimationProperty

Identifies the DisplayAnimation dependency property.

public static readonly DependencyProperty DragModeProperty

Identifies the DragMode dependency property.

public static readonly DependencyProperty EnableFadeInAnimationProperty

Identifies the EnableFadeAnimation dependency property.

public static readonly DependencyProperty EnableFadeOutAnimationProperty

Identifies the EnableFadeAnimation dependency property.

public static readonly DependencyProperty EnableMouseOverStateProperty

Identifies the EnableMouseOverState dependency property.

public static readonly DependencyProperty EnableReflectionProperty

Identifies the EnableReflection dependency property.

public static readonly DependencyProperty EnableStackGridFadeAnimationProperty

Identifies the EnableStackGridFadeAnimation dependency property.

public static readonly DependencyProperty HideAnimationProperty

Identifies the HideAnimation dependency property.

public static readonly DependencyProperty ImageLoaderTextVisibilityProperty

Identifies the ShowImageLoaderProgressText dependency property.

public static readonly DependencyProperty IsOpenProperty

Identifies the IsOpen dependency property.

public static readonly DependencyProperty LatencyProperty

Identifies the Latency dependency property.

public static readonly DependencyProperty ReflectionPositionProperty

Identifies the ReflectionPosition dependency property.

public static readonly DependencyProperty ReflectionVisibilityProperty

Identifies the ReflectionVisibility dependency property.

public static readonly DependencyProperty SelectedIndexProperty

Identifies the SelectedIndex dependency property.

public static readonly DependencyProperty SelectedItemProperty

Identifies the SelectedItem dependency property.

public static readonly DependencyProperty SelectedValuePathProperty

Identifies the SelectedValuePath dependency property.

public static readonly DependencyProperty SelectedValueProperty

Identifies the SelectedValue dependency property.

public static readonly DependencyProperty StackAnimationSpeedRatioProperty

Identifies the StackAnimationSpeedRatio dependency property.

public static readonly DependencyProperty StackArcDegreeProperty

Identifies the StackArcDegree dependency property.

public static readonly DependencyProperty StackArcDirectionProperty

Identifies the StackArcDirection dependency property.

public static readonly DependencyProperty StackArcItemHeightProperty

Identifies the StackArcItemHeight dependency property.

public static readonly DependencyProperty StackArcItemWidthProperty

Identifies the StackArcItemWidth dependency property.

public static readonly DependencyProperty StackArcLaunchOffsetProperty

Identifies the StackArcLaunchOffset dependency property.

public static readonly DependencyProperty StackArcTextOffsetProperty

Identifies the StackArcTextOffset dependency property.

public static readonly DependencyProperty StackArcTextPositionProperty

Identifies the StackArcTextPosition dependency property.

public static readonly DependencyProperty StackDockPositionProperty

Identifies the StackDockPosition dependency property.

public static readonly DependencyProperty StackGridColumnProperty

Identifies the StackGridColumn dependency property.

public static readonly DependencyProperty StackGridFooterTextProperty

Identifies the StackGridFooterText dependency property.

public static readonly DependencyProperty StackGridHeaderTextProperty

Identifies the StackGridHeaderText dependency property.

public static readonly DependencyProperty StackGridItemHeightProperty

Identifies the StackGridItemHeight dependency property.

public static readonly DependencyProperty StackGridItemMarginProperty

Identifies the StackGridItemMargin dependency property.

public static readonly DependencyProperty StackGridItemWidthProperty

Identifies the StackGridItemWidth dependency property.

public static readonly DependencyProperty StackGridModeProperty

Identifies the StackGridMode dependency property.

public static readonly DependencyProperty StackGridPaddingProperty

Identifies the StackGridPadding dependency property.

public static readonly DependencyProperty StackGridRowProperty

Identifies the StackGridRow dependency property.

public static readonly DependencyProperty StackGridTemplateProperty

Identifies the StackGridTemplate dependency property.

public static readonly DependencyProperty StackIndicatorSourceProperty

Identifies the StackIndicatorSource dependency property.

public static readonly DependencyProperty StackMenuItemHeightProperty

Identifies the StackMenuItemHeight dependency property.

public static readonly DependencyProperty StackMenuItemWidthProperty

Identifies the StackMenuItemWidth dependency property.

public static readonly DependencyProperty StackMenuStyleProperty

Identifies the StackMenuStyle dependency property.

public static readonly DependencyProperty StackModeProperty

Identifies the StackMode dependency property.

public static readonly DependencyProperty StackTotalDisplayItemProperty

Identifies the StackTotalDisplayItem dependency property.

public static readonly DependencyProperty StaysOpenProperty

Identifies the StaysOpen dependency property.

public static readonly DependencyProperty TextProperty

Identifies the Text dependency property.

public static readonly DependencyProperty UseImageLoaderProperty

Identifies the UseImageLoader dependency property.

Public Methods

public void DetachedEventHandlers()

Detach built-in event handlers from control templates. Call this method if necessary.

public void Dispose()

 

public void InitializeTemplates()

Initializes control templates.

public void InitTransformInfo()

Initialize transformable info.

public void OnApplyTemplate()

Builds the visual tree for the UXStackButton when a new template is applied.

public void RefreshContentLayout()

Refresh the content display.

public void ResetAutoShowTimer()

Reset auto show timer.

public void ResetState()

Reset state.

public FrameworkElement TransformObject(FrameworkElement element)

Transform drag drop object to UXStackItem.

Parameters

elementSource element.

Return Types

Transformed element.

 

public void UpdatePosition()

Update stack position.

Protected Methods

protected void ChangeVisualState(bool useTransitions)

Overrides ChangeVisualState implementation for dropdown button.

Parameters

useTransitionsA boolean value that indicates whether transition should be used during visual state change.

 

protected void DisplayModeChanged()

Called when the DisplayMode property is changed.

protected void IsOpenPropertyChanged(DependencyPropertyChangedEventArgs e)

Called when the value of IsOpen property changes.

Parameters

eThe event data for the property change.

 

protected ItemsControl ItemsControlFactory()

Items control factory

protected void Menu_Closed(object sender, ISRoutedEventArgs e)

On stack menu closed.

Parameters

sender 
e 

 

protected void Menu_Opened(object sender, ISRoutedEventArgs e)

On stack menu opened.

Parameters

sender 
e 

 

protected void MenuStateChanged(bool isOpen)

On stack menu state changed.

Parameters

isOpenA value that indicates whether the menu is being opened or closed.

 

protected void OnClick()

Called before the Click event occurs.

protected void OnIsPressedChanged(DependencyPropertyChangedEventArgs e)

Called when the value of IsPressed property changes.

Parameters

eThe event data for the property change.

 

protected void OnKeyDown(KeyEventArgs e)

Called before the KeyDown event occurs.

Parameters

eThe data for the event.

 

protected void OnLostFocus(RoutedEventArgs e)

Called before the LostFocus event occurs.

Parameters

eThe data for the event.

 

protected void OnLostKeyboardFocus(KeyboardFocusChangedEventArgs e)

Inheritors should override this method to handle custom logic for LostKeyboardFocus event.

Parameters

eKeyboardFocusChangedEventArgs object.

 

protected void OnMouseEnter(MouseEventArgs e)

Called before MouseEnter event occurs.

Parameters

eThe data for the event.

 

protected void OnMouseLeave(MouseEventArgs e)

Called before the MouseLeave event occurs.

Parameters

eThe data for the event.

 

protected void OnMouseMove(MouseEventArgs e)

Called before the MouseMove event occurs.

Parameters

eThe data for the event.

 

protected void PerformClick()

Perform button click.

Events

public event ISRoutedEventHandler StackClosed

Occurs when the stack menu of the button is closed.

public event ISRoutedEventHandler StackOpened

Occurs when the stack menu of the button is opened.

  • No labels