Intersoft ClientUI Documentation
UXDock Class
Members  See Also  Send Feedback
Intersoft.Client.UI.Aqua.UXDock Namespace : UXDock Class






Represents a dock navigation control.

Object Model

UXDock Class

Syntax

Visual Basic (Declaration) 
<TemplatePartAttribute(Name="BackgroundImageRightElement", Type=System.Windows.Controls.Image)>
<StyleTypedPropertyAttribute(Property="ItemContainerStyle", StyleTargetType=Intersoft.Client.UI.Aqua.UXDock.UXDockButton)>
<TemplatePartAttribute(Name="BackgroundImageLeftElement", Type=System.Windows.Controls.Image)>
<TemplatePartAttribute(Name="BackgroundContainerRightElement", Type=System.Windows.Controls.Grid)>
<TemplatePartAttribute(Name="BackgroundElement", Type=System.Windows.Controls.Border)>
<TemplatePartAttribute(Name="BackgroundImageCenterElement", Type=System.Windows.Controls.Image)>
<TemplatePartAttribute(Name="StructureElement", Type=System.Windows.Controls.StackPanel)>
<TemplatePartAttribute(Name="RootElement", Type=System.Windows.Controls.Grid)>
<TemplatePartAttribute(Name="LayoutElement", Type=System.Windows.Controls.StackPanel)>
<TemplatePartAttribute(Name="StructureLeft", Type=System.Windows.Controls.StackPanel)>
<TemplatePartAttribute(Name="BackgroundLayoutElement", Type=System.Windows.Controls.StackPanel)>
<TemplatePartAttribute(Name="ItemsPresenter", Type=System.Windows.Controls.ItemsPresenter)>
<TemplatePartAttribute(Name="StructureRight", Type=System.Windows.Controls.StackPanel)>
<TemplatePartAttribute(Name="BackgroundContainerLeftElement", Type=System.Windows.Controls.Grid)>
<TemplatePartAttribute(Name="ContentTransformer", Type=Intersoft.Client.UI.Controls.ContentTransformer)>
<TemplatePartAttribute(Name="BackgroundTemplateElement", Type=System.Windows.Controls.Grid)>
<TemplatePartAttribute(Name="BackgroundContainerElement", Type=System.Windows.Controls.Grid)>
<DescriptionAttribute("Represents a dock navigation control.")>
Public Class UXDock 
   Inherits Intersoft.Client.UI.Controls.Interactivity.ISDragableItemsControl
   Implements IControlIFramework, ILicensing, IDropable 
Visual Basic (Usage)Copy Code
Dim instance As UXDock
C# 
[TemplatePartAttribute(Name="BackgroundImageRightElement", Type=System.Windows.Controls.Image)]
[StyleTypedPropertyAttribute(Property="ItemContainerStyle", StyleTargetType=Intersoft.Client.UI.Aqua.UXDock.UXDockButton)]
[TemplatePartAttribute(Name="BackgroundImageLeftElement", Type=System.Windows.Controls.Image)]
[TemplatePartAttribute(Name="BackgroundContainerRightElement", Type=System.Windows.Controls.Grid)]
[TemplatePartAttribute(Name="BackgroundElement", Type=System.Windows.Controls.Border)]
[TemplatePartAttribute(Name="BackgroundImageCenterElement", Type=System.Windows.Controls.Image)]
[TemplatePartAttribute(Name="StructureElement", Type=System.Windows.Controls.StackPanel)]
[TemplatePartAttribute(Name="RootElement", Type=System.Windows.Controls.Grid)]
[TemplatePartAttribute(Name="LayoutElement", Type=System.Windows.Controls.StackPanel)]
[TemplatePartAttribute(Name="StructureLeft", Type=System.Windows.Controls.StackPanel)]
[TemplatePartAttribute(Name="BackgroundLayoutElement", Type=System.Windows.Controls.StackPanel)]
[TemplatePartAttribute(Name="ItemsPresenter", Type=System.Windows.Controls.ItemsPresenter)]
[TemplatePartAttribute(Name="StructureRight", Type=System.Windows.Controls.StackPanel)]
[TemplatePartAttribute(Name="BackgroundContainerLeftElement", Type=System.Windows.Controls.Grid)]
[TemplatePartAttribute(Name="ContentTransformer", Type=Intersoft.Client.UI.Controls.ContentTransformer)]
[TemplatePartAttribute(Name="BackgroundTemplateElement", Type=System.Windows.Controls.Grid)]
[TemplatePartAttribute(Name="BackgroundContainerElement", Type=System.Windows.Controls.Grid)]
[DescriptionAttribute("Represents a dock navigation control.")]
public class UXDock : Intersoft.Client.UI.Controls.Interactivity.ISDragableItemsControl, IControlIFramework, ILicensing, IDropable  
JScript 
TemplatePartAttribute(Name="BackgroundImageRightElement", Type=System.Windows.Controls.Image)
StyleTypedPropertyAttribute(Property="ItemContainerStyle", StyleTargetType=Intersoft.Client.UI.Aqua.UXDock.UXDockButton)
TemplatePartAttribute(Name="BackgroundImageLeftElement", Type=System.Windows.Controls.Image)
TemplatePartAttribute(Name="BackgroundContainerRightElement", Type=System.Windows.Controls.Grid)
TemplatePartAttribute(Name="BackgroundElement", Type=System.Windows.Controls.Border)
TemplatePartAttribute(Name="BackgroundImageCenterElement", Type=System.Windows.Controls.Image)
TemplatePartAttribute(Name="StructureElement", Type=System.Windows.Controls.StackPanel)
TemplatePartAttribute(Name="RootElement", Type=System.Windows.Controls.Grid)
TemplatePartAttribute(Name="LayoutElement", Type=System.Windows.Controls.StackPanel)
TemplatePartAttribute(Name="StructureLeft", Type=System.Windows.Controls.StackPanel)
TemplatePartAttribute(Name="BackgroundLayoutElement", Type=System.Windows.Controls.StackPanel)
TemplatePartAttribute(Name="ItemsPresenter", Type=System.Windows.Controls.ItemsPresenter)
TemplatePartAttribute(Name="StructureRight", Type=System.Windows.Controls.StackPanel)
TemplatePartAttribute(Name="BackgroundContainerLeftElement", Type=System.Windows.Controls.Grid)
TemplatePartAttribute(Name="ContentTransformer", Type=Intersoft.Client.UI.Controls.ContentTransformer)
TemplatePartAttribute(Name="BackgroundTemplateElement", Type=System.Windows.Controls.Grid)
TemplatePartAttribute(Name="BackgroundContainerElement", Type=System.Windows.Controls.Grid)
DescriptionAttribute("Represents a dock navigation control.")
public class UXDock extends Intersoft.Client.UI.Controls.Interactivity.ISDragableItemsControl implements IControlIFramework, ILicensing, IDropable 
Managed Extensions for C++ 
[TemplatePartAttribute(Name="BackgroundImageRightElement", Type=System.Windows.Controls.Image)]
[StyleTypedPropertyAttribute(Property="ItemContainerStyle", StyleTargetType=Intersoft.Client.UI.Aqua.UXDock.UXDockButton)]
[TemplatePartAttribute(Name="BackgroundImageLeftElement", Type=System.Windows.Controls.Image)]
[TemplatePartAttribute(Name="BackgroundContainerRightElement", Type=System.Windows.Controls.Grid)]
[TemplatePartAttribute(Name="BackgroundElement", Type=System.Windows.Controls.Border)]
[TemplatePartAttribute(Name="BackgroundImageCenterElement", Type=System.Windows.Controls.Image)]
[TemplatePartAttribute(Name="StructureElement", Type=System.Windows.Controls.StackPanel)]
[TemplatePartAttribute(Name="RootElement", Type=System.Windows.Controls.Grid)]
[TemplatePartAttribute(Name="LayoutElement", Type=System.Windows.Controls.StackPanel)]
[TemplatePartAttribute(Name="StructureLeft", Type=System.Windows.Controls.StackPanel)]
[TemplatePartAttribute(Name="BackgroundLayoutElement", Type=System.Windows.Controls.StackPanel)]
[TemplatePartAttribute(Name="ItemsPresenter", Type=System.Windows.Controls.ItemsPresenter)]
[TemplatePartAttribute(Name="StructureRight", Type=System.Windows.Controls.StackPanel)]
[TemplatePartAttribute(Name="BackgroundContainerLeftElement", Type=System.Windows.Controls.Grid)]
[TemplatePartAttribute(Name="ContentTransformer", Type=Intersoft.Client.UI.Controls.ContentTransformer)]
[TemplatePartAttribute(Name="BackgroundTemplateElement", Type=System.Windows.Controls.Grid)]
[TemplatePartAttribute(Name="BackgroundContainerElement", Type=System.Windows.Controls.Grid)]
[DescriptionAttribute("Represents a dock navigation control.")]
public __gc class UXDock : public Intersoft.Client.UI.Controls.Interactivity.ISDragableItemsControl, IControlIFramework, ILicensing, IDropable  
C++/CLI 
[TemplatePartAttribute(Name="BackgroundImageRightElement", Type=System.Windows.Controls.Image)]
[StyleTypedPropertyAttribute(Property="ItemContainerStyle", StyleTargetType=Intersoft.Client.UI.Aqua.UXDock.UXDockButton)]
[TemplatePartAttribute(Name="BackgroundImageLeftElement", Type=System.Windows.Controls.Image)]
[TemplatePartAttribute(Name="BackgroundContainerRightElement", Type=System.Windows.Controls.Grid)]
[TemplatePartAttribute(Name="BackgroundElement", Type=System.Windows.Controls.Border)]
[TemplatePartAttribute(Name="BackgroundImageCenterElement", Type=System.Windows.Controls.Image)]
[TemplatePartAttribute(Name="StructureElement", Type=System.Windows.Controls.StackPanel)]
[TemplatePartAttribute(Name="RootElement", Type=System.Windows.Controls.Grid)]
[TemplatePartAttribute(Name="LayoutElement", Type=System.Windows.Controls.StackPanel)]
[TemplatePartAttribute(Name="StructureLeft", Type=System.Windows.Controls.StackPanel)]
[TemplatePartAttribute(Name="BackgroundLayoutElement", Type=System.Windows.Controls.StackPanel)]
[TemplatePartAttribute(Name="ItemsPresenter", Type=System.Windows.Controls.ItemsPresenter)]
[TemplatePartAttribute(Name="StructureRight", Type=System.Windows.Controls.StackPanel)]
[TemplatePartAttribute(Name="BackgroundContainerLeftElement", Type=System.Windows.Controls.Grid)]
[TemplatePartAttribute(Name="ContentTransformer", Type=Intersoft.Client.UI.Controls.ContentTransformer)]
[TemplatePartAttribute(Name="BackgroundTemplateElement", Type=System.Windows.Controls.Grid)]
[TemplatePartAttribute(Name="BackgroundContainerElement", Type=System.Windows.Controls.Grid)]
[DescriptionAttribute("Represents a dock navigation control.")]
public ref class UXDock : public Intersoft.Client.UI.Controls.Interactivity.ISDragableItemsControl, IControlIFramework, ILicensing, IDropable  

Remarks

UXDock is inherited from ISItemsControl. For more information about selection control see ItemsControl Overview and Content Model Overview.

UXDock has certain layouting settings controlled by internal mechanism, so it is important to understand the layouting concept before trying to modify layouting aspects of UXDock.

Several properties that are locked are:

  • HorizontalAlignment
  • VerticalAlignment
  • Margin
  • Width / Height 

These properties are used in the internal mechanism to control the dock layouting, since the layouting is quite complex we provide a simpler layouting property called DockPosition and DockMargin.

The following is the structure illustration of UXDock.

 

Customizing UXDock Dimension

Depending on the DockPosition you can only control one of the dimension aspects at one time while MagnifiedSize property control the other dimension aspects.

For example:

  • If the DockPosition property is set to Bottom or Top the Width of UXDock is determined by the number of buttons, while the Height is determined by MagnifiedSize property.
  • If the DockPosition property is set to Left or Right the Height of UXDock is determined by the number of buttons, while the Width is determined by MagnifiedSize property.

Customizing Dock Position

UXDock positioning can be controlled using DockPosition property by default the DockPosition is set to Bottom. When you change this property the UXDock will transform all its elements such as reflection, tooltip position, stack button position etc accordingly.

XAML Copy Code
<Intersoft:UXDock DockPosition="Left">
    <Intersoft:UXDockButton Text="Home" Icon="Home.png"/>
    <Intersoft:UXDockButton Text="Clock" Icon="Clock.png"/>
    <Intersoft:UXDockButton Text="Picture" Icon="Picture.png"/>
    <Intersoft:UXDockButton Text="Mail" Icon="Mail.png"/>
    <Intersoft:UXDockSeparator/>
    <Intersoft:UXDockButton Text="Document" Icon="Document.png" StackMode="GridStyle">
        <Intersoft:UXStackItem Text="Video" Icon="Video.png"/>
        <Intersoft:UXStackItem Text="Photo" Icon="Photo.png"/>
        <Intersoft:UXStackItem Text="Music" Icon="Mp3.png"/>
        <Intersoft:UXStackItem Text="Text" Icon="Text.png"/>
    </Intersoft:UXDockButton>
</Intersoft:UXDock>

 

Customizing Dock Margin

DockMargin provides space between UXDock and the container. In a sense it can also be uses to determine the reflection area.

XAML Copy Code
<Intersoft:UXDock DockMargin="16,16,16,60">
    <Intersoft:UXDockButton Text="Home" Icon="Home.png"/>
    <Intersoft:UXDockButton Text="Clock" Icon="Clock.png"/>
    <Intersoft:UXDockButton Text="Picture" Icon="Picture.png"/>
    <Intersoft:UXDockButton Text="Mail" Icon="Mail.png"/>
    <Intersoft:UXDockSeparator/>
    <Intersoft:UXDockButton Text="Document" Icon="Document.png" StackMode="GridStyle">
        <Intersoft:UXStackItem Text="Video" Icon="Video.png"/>
        <Intersoft:UXStackItem Text="Photo" Icon="Photo.png"/>
        <Intersoft:UXStackItem Text="Music" Icon="Mp3.png"/>
        <Intersoft:UXStackItem Text="Text" Icon="Text.png"/>
    </Intersoft:UXDockButton>
</Intersoft:UXDock>

 

Inheritance Hierarchy

System.Object
   System.Windows.DependencyObject
      System.Windows.UIElement
         System.Windows.FrameworkElement
            System.Windows.Controls.Control
               System.Windows.Controls.ItemsControl
                  Intersoft.Client.Framework.ISItemsControl
                     Intersoft.Client.UI.Controls.Interactivity.ISDragableItemsControl
                        Intersoft.Client.UI.Aqua.UXDock.UXDock
                           Intersoft.Client.UI.Aqua.UXDock.UXDesktopDock

Requirements

Target Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family, Windows Vista, Windows Server 2008 family

See Also

© 2012 All Rights Reserved.