ConfigurationElement.IsModified Method ()
Indicates whether this configuration element has been modified since it was last saved or loaded, when implemented in a derived class.
Assembly: System.Configuration (in System.Configuration.dll)
The IsModified method determines whether this ConfigurationElement object will be written to the configuration file when the Save method is called. If the return value is false, it is assumed that the configuration file represents the current state of the element.
By default, IsModified returns true after a property is set through the indexer to this ConfigurationElement object.
Override the IsModified method to provide custom indication of the state of this ConfigurationElement element.
The following example shows how to extend IsModified.
Protected Overrides Function IsModified() As Boolean
Dim ret As Boolean = MyBase.IsModified()
' Enter your custom processing code here.
Return ret
End Function 'IsModified
End Class 'UrlConfigElement
The method shown in the previous example is called when a configuration element is modified, as in the following example.
' Show how to use IsModified. ' This method modifies the port property ' of the url element named Microsoft and ' saves the modification to the configuration ' file. This in turn will cause the overriden ' UrlConfigElement.IsModified() mathod to be called. Shared Sub ModifyElement() Try ' Get the current configuration file. Dim config _ As System.Configuration.Configuration = _ ConfigurationManager.OpenExeConfiguration( _ ConfigurationUserLevel.None) ' Get the MyUrls section. Dim myUrlsSection As UrlsSection = _ config.GetSection("MyUrls") Dim elements As UrlsCollection = _ myUrlsSection.Urls Dim elemEnum As IEnumerator = _ elements.GetEnumerator() Dim i As Integer = 0 While elemEnum.MoveNext() If elements(i).Name = "Microsoft" Then elements(i).Port = 1010 Dim [readOnly] As Boolean = _ elements(i).IsReadOnly() Exit While End If i += 1 End While If Not myUrlsSection.ElementInformation.IsLocked Then config.Save(ConfigurationSaveMode.Full) ' This to obsolete the MyUrls cached ' section and read the updated version ' from the configuration file. ConfigurationManager.RefreshSection("MyUrls") Else Console.WriteLine("Section was locked, could not update.") End If Catch err As ConfigurationErrorsException Console.WriteLine("[ModifyElement: {0}]", _ err.ToString()) End Try End Sub 'ModifyElement
Available since 2.0