public ChoConfigurationChangeRegistryWatcher(string configurationSectionName, string registryKey)
            : base(configurationSectionName)
        {
            ChoGuard.ArgumentNotNullOrEmpty(registryKey, "RegistryKey");

            _registryKey = registryKey;
            _eventArgs   = new ChoConfigurationRegistryChangedEventArgs(configurationSectionName, _registryKey, DateTime.MinValue);

            _registryChangeMonitor = new ChoRegistryChangeMonitor(registryKey);
            _registryChangeMonitor.RegistryChanged += new EventHandler(RegistryChangeMonitor_RegistryChanged);
            _registryChangeMonitor.Error           += new ErrorEventHandler(RegistryChangeMonitor_Error);
        }
 private void RegistryChangeMonitor_RegistryChanged(object sender, EventArgs e)
 {
     _eventArgs = new ChoConfigurationRegistryChangedEventArgs(SectionName, _registryKey, DateTime.Now);
     OnConfigurationChanged();
 }