UIElement is a base class for most of the objects that have visual appearance and can process basic input in Silverlight.
Public MustInherit Class UIElement _ Inherits DependencyObject
Dim instance As UIElement
public abstract class UIElement : DependencyObject
UIElement provides a starting point for Silverlight layout characteristics; FrameworkElement adds more layout capabilities.
Much of the input behavior for objects in a Silverlight UI is defined in the UIElement class. This includes the events for keyboard, mouse and stylus input, and focus events. Some of these events are routed events. A routed event enables a built-in event handling notification system, so that a parent object can handle input events from child objects in the object tree if the event remains unhandled. This input event behavior is useful for input area grouping, and control compositing.
Although UIElement defines the events for focus reporting (GotFocus, LostFocus), UIElement does not define an API for programmatically setting the focus. However, this capability is defined by the Control class and is thus present for many Silverlight classes.
UIElement does not expose a public constructor. It is not common to derive from either UIElement or FrameworkElement directly. More commonly used base classes for derived custom classes in Silverlight are:
Specific controls that are not sealed (for example, TextBox)
Control base classes (Control, ContentControl, UserControl)
Panel classes (the base class Panel, or specific non-sealed panel implementations, for example Grid)
For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.