This documentation is archived and is not being maintained.

ConfigurationElement.LockElements Property

Gets the collection of locked elements.

Namespace:  System.Configuration
Assembly:  System.Configuration (in System.Configuration.dll)

public ConfigurationLockCollection LockElements { get; }

The LockElements property allows you to lock all the elements you specify.

To do that, you use the Contains method, as explained in the next example.

NoteNote:

The LockElements property allows you to prevent the child configuration elements of the element to which you apply the rule from being modified. Use LockItem if you want to put a general lock on the element itself and its child elements.

The following example shows how to use the LockElements property.

// Show how to use LockElements 
// It locks and unlocks the urls element. 
static void LockElements()
{

    try
    {
        // Get the configuration file.
        System.Configuration.Configuration config =
            ConfigurationManager.OpenExeConfiguration(
            ConfigurationUserLevel.None);

        // Get the MyUrls section.
        UrlsSection myUrlsSection =
            config.GetSection("MyUrls") as UrlsSection;

        if (myUrlsSection == null)
            Console.WriteLine("Failed to load UrlsSection.");
        else
        {
            // Get MyUrls section LockElements collection.
            ConfigurationLockCollection lockElements =
                myUrlsSection.LockElements;

            // Get MyUrls section LockElements collection  
            // enumerator.
            IEnumerator lockElementEnum =
                 lockElements.GetEnumerator();

            // Position the collection index.
            lockElementEnum.MoveNext();

            if (lockElements.Contains("urls"))
                // Remove the lock on the urls element.
                lockElements.Remove("urls");
            else 
                // Add the lock on the urls element.
                lockElements.Add("urls");

            // Save the change.
            config.Save(ConfigurationSaveMode.Full);

        }

    }
    catch (ConfigurationErrorsException err)
    {
        Console.WriteLine("[LockElements: {0}]",
            err.ToString());
    }
}

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0
Show: