If a configuration item should be visible in the gui, it needs to be marked by this attribute to get a display name. Falls ein Konfigurationselement in der GUI sichtbar sein soll, muss es mit diesem Attribut gekennzeichnet sein. Damit bekommt es einen Anzeigenamen für das Propertygrid.
Inheritance: System.Attribute
        private void CreateFilesystemControl(NameAttribute displayNameAttribute, RequiredAttribute requiredAttribute, ConfigEditorAttribute editorTypeAttribute, Binding b)
        {
            var fileSystemControl = new ConfigFileSystemControl();
            fileSystemControl.ConfigItemDisplayName = _localController.GetLocalString(displayNameAttribute.LocalType, displayNameAttribute.DisplayName);
            fileSystemControl.SetBinding(ConfigFileSystemControl.ConfigItemValueProperty, b);
            fileSystemControl.WaterMarkText = requiredAttribute != null ? _localController.GetLocalStrings<SDGuiStrings>().Mandatory : _localController.GetLocalStrings<SDGuiStrings>().Optional;
            fileSystemControl.WaterMarkColor = requiredAttribute != null ? (SolidColorBrush)TryFindResource("Color_FadedRed") : (SolidColorBrush)TryFindResource("Color_FadedGray");
            fileSystemControl.IsFileSelector = editorTypeAttribute.Editor == EditorType.Filepicker;
            fileSystemControl.OpenFileFilter = editorTypeAttribute.OpenFileFilter;

            configItemPanel.Children.Add(fileSystemControl);
        }
        private void CreateVisibilityControl(NameAttribute displayNameAttribute)
        {
            var visibilityControl = new ConfigVisibilityControl(_localController.GetLocalStrings<SDGuiStrings>(), _coreConfigSection, _buildController);
            visibilityControl.ConfigItemDisplayName = _localController.GetLocalString(displayNameAttribute.LocalType, displayNameAttribute.DisplayName);

            configItemPanel.Children.Add(visibilityControl);
        }
        private void CreateColorpickerControl(NameAttribute displayNameAttribute, Binding b)
        {
            var colorControl = new ConfigColorControl();
            colorControl.ConfigItemDisplayName = _localController.GetLocalString(displayNameAttribute.LocalType, displayNameAttribute.DisplayName);
            colorControl.SetBinding(ConfigColorControl.ConfigItemValueProperty, b);

            configItemPanel.Children.Add(colorControl);
        }
        private void CreateComboboxControl(NameAttribute displayNameAttribute, RequiredAttribute requiredAttribute, ConfigEditorAttribute editorTypeAttribute, Binding b)
        {
            var dropDownControl = new ConfigComboBoxControl();
            dropDownControl.ConfigItemDisplayName = _localController.GetLocalString(displayNameAttribute.LocalType, displayNameAttribute.DisplayName);
            dropDownControl.SourceList = (ComboBoxList)Activator.CreateInstance(editorTypeAttribute.SourceListType);
            dropDownControl.SetBinding(ConfigComboBoxControl.SelectedValueProperty, b);
            dropDownControl.WaterMarkText = requiredAttribute != null ? _localController.GetLocalStrings<SDGuiStrings>().Mandatory : _localController.GetLocalStrings<SDGuiStrings>().Optional;
            dropDownControl.WaterMarkColor = requiredAttribute != null ? (SolidColorBrush)TryFindResource("Color_FadedRed") : (SolidColorBrush)TryFindResource("Color_FadedGray");

            configItemPanel.Children.Add(dropDownControl);
        }
        private void CreateCheckboxControl(NameAttribute displayNameAttribute, Binding b)
        {
            var boolItemControl = new ConfigBoolControl();
            boolItemControl.ConfigItemDisplayName = _localController.GetLocalString(displayNameAttribute.LocalType, displayNameAttribute.DisplayName);
            boolItemControl.SetBinding(ConfigBoolControl.ConfigItemValueProperty, b);

            configItemPanel.Children.Add(boolItemControl);
        }
        private void CreateTextboxControl(NameAttribute displayNameAttribute, RequiredAttribute requiredAttribute, Binding b)
        {
            var textItemControl = new ConfigTextControl();
            textItemControl.ConfigItemDisplayName = _localController.GetLocalString(displayNameAttribute.LocalType, displayNameAttribute.DisplayName);
            textItemControl.SetBinding(ConfigTextControl.ConfigItemValueProperty, b);
            textItemControl.WaterMarkText = requiredAttribute != null ? _localController.GetLocalStrings<SDGuiStrings>().Mandatory : _localController.GetLocalStrings<SDGuiStrings>().Optional;
            textItemControl.WaterMarkColor = requiredAttribute != null ? (SolidColorBrush)TryFindResource("Color_FadedRed") : (SolidColorBrush)TryFindResource("Color_FadedGray");

            configItemPanel.Children.Add(textItemControl);
        }
        private void CreateCheckboxListControl(NameAttribute displayNameAttribute, CheckBoxList sourceList, Binding b)
        {
            var checkBoxListControl = new ConfigCheckBoxListControl(_localController.GetLocalStrings<SDGuiStrings>());
            checkBoxListControl.ConfigItemDisplayName = _localController.GetLocalString(displayNameAttribute.LocalType, displayNameAttribute.DisplayName);
            checkBoxListControl.SourceList = sourceList;
            checkBoxListControl.SetBinding(ConfigCheckBoxListControl.SelectedItemsProperty, b);

            configItemPanel.Children.Add(checkBoxListControl);
        }