withSIX.Play.Applications.ViewModels.Overlays.SettingsViewModel.EnableDisableOption C# (CSharp) Method

EnableDisableOption() private method

private EnableDisableOption ( string OptionName, bool Enabled ) : void
OptionName string
Enabled bool
return void
        void EnableDisableOption(string OptionName, bool Enabled) {
            var descriptor = TypeDescriptor.GetProperties(GetType())[OptionName];
            var attribute = (ReadOnlyAttribute) descriptor.Attributes[typeof (ReadOnlyAttribute)];
            var fieldToChange = attribute.GetType()
                .GetField("isReadOnly", BindingFlags.NonPublic | BindingFlags.Instance);
            fieldToChange.SetValue(attribute, !Enabled);

            RefreshPropertyGrid();
        }