SALES: 1-800-867-1380
Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

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());
            }
        }

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2015 Microsoft