UIElement.IsEnabled Property

Definition

Gets or sets a value indicating whether this element is enabled in the user interface (UI). This is a dependency property.

public:
 property bool IsEnabled { bool get(); void set(bool value); };
public bool IsEnabled { get; set; }
member this.IsEnabled : bool with get, set
Public Property IsEnabled As Boolean

Property Value

true if the element is enabled; otherwise, false. The default value is true.

Examples

The following example shows a handler on one button that when executed will set IsEnabled false on another named button b1.

public partial class RoutedEventAddRemoveHandler {
    void MakeButton(object sender, RoutedEventArgs e)
    {
        Button b2 = new Button();
        b2.Content = "New Button";
        // Associate event handler to the button. You can remove the event 
        // handler using "-=" syntax rather than "+=".
        b2.Click  += new RoutedEventHandler(Onb2Click);
        root.Children.Insert(root.Children.Count, b2);
        DockPanel.SetDock(b2, Dock.Top);
        text1.Text = "Now click the second button...";
        b1.IsEnabled = false;
    }
    void Onb2Click(object sender, RoutedEventArgs e)
    {
        text1.Text = "New Button (b2) Was Clicked!!";
    }
Public Partial Class RoutedEventAddRemoveHandler
    Private Sub MakeButton(ByVal sender As Object, ByVal e As RoutedEventArgs)
        Dim b2 As Button = New Button()
        b2.Content = "New Button"
        AddHandler b2.Click, AddressOf Onb2Click
        root.Children.Insert(root.Children.Count, b2)
        DockPanel.SetDock(b2, Dock.Top)
        text1.Text = "Now click the second button..."
        b1.IsEnabled = False
    End Sub
    Private Sub Onb2Click(ByVal sender As Object, ByVal e As RoutedEventArgs)
        text1.Text = "New Button (b2) Was Clicked!!"
    End Sub

Remarks

Note that this property is influenced by class-specific implementations of IsEnabledCore on particular elements, often at runtime. Therefore, the default value listed here is sometimes not effective. For instance, a ScrollBar will be IsEnabled false whenever it is determined that there is no need to support a scrollbar. Attempting to set this value will also potentially be overridden by the value returned by IsEnabledCore.

Elements that are not enabled do not participate in hit testing or focus and therefore will not be sources of input events.

Dependency Property Information

Identifier field IsEnabledProperty
Metadata properties set to true None

Applies to

See also