Delen via


Applicatie-instellingen voor aangepaste bedieningselementen

U moet bepaalde taken uitvoeren om uw aangepaste besturingselementen de mogelijkheid te bieden om toepassingsinstellingen te behouden wanneer de besturingselementen worden gehost in toepassingen van derden.

De meeste documentatie over de functie Toepassingsinstellingen wordt geschreven onder de veronderstelling dat u een zelfstandige toepassing maakt. Als u echter een besturingselement maakt dat andere ontwikkelaars in hun toepassingen zullen hosten, moet u een paar extra stappen zetten om ervoor te zorgen dat het besturingselement zijn instellingen correct behoudt.

App-instellingen en aangepaste bedieningselementen

Uw besturingselement moet het proces encapsuleren door een eigen wrapklasse voor applicatie-instellingen te maken die is afgeleid van ApplicationSettingsBase. Daarnaast moet de hoofdbeheerklasse de IPersistComponentSettingsimplementeren. De interface bevat verschillende eigenschappen, evenals twee methoden, LoadComponentSettings en SaveComponentSettings. Als u uw besturingselement toevoegt aan een formulier met behulp van de Windows Forms Designer- in Visual Studio, wordt Windows Forms automatisch LoadComponentSettings aangeroepen wanneer het besturingselement wordt geïnitialiseerd; u moet SaveComponentSettings zelf aanroepen in de Dispose methode van uw controle.

Daarnaast moet u het volgende implementeren om toepassingsinstellingen voor aangepaste besturingselementen goed te laten werken in ontwerpomgevingen zoals Visual Studio:

  1. Een aangepaste klasse voor toepassingsinstellingen met een constructor die een IComponent als één parameter gebruikt. Gebruik deze klasse om al uw toepassingsinstellingen op te slaan en te laden. Wanneer u een nieuw exemplaar van deze klasse maakt, geeft u uw aangepaste controle door met behulp van de constructor.

  2. Maak deze klasse voor aangepaste instellingen nadat de controle is gemaakt en op een formulier is geplaatst, bijvoorbeeld in de gebeurtenis-handler Load van het formulier.

Zie Procedure: Toepassingsinstellingen makenvoor instructies voor het maken van een aangepaste instellingenklasse.

Instellingensleutels en gedeelde instellingen

Sommige besturingselementen kunnen meerdere keren in hetzelfde formulier worden gebruikt. Meestal wilt u dat deze besturingselementen hun eigen afzonderlijke instellingen behouden. Met de eigenschap SettingsKey op IPersistComponentSettingskunt u een unieke tekenreeks opgeven waarmee meerdere versies van een controle op een formulier kunnen worden onderscheiden.

De eenvoudigste manier om SettingsKey te implementeren, is door de eigenschap Name van het besturingselement voor de SettingsKeyte gebruiken. Wanneer u de instellingen van het besturingselement laadt of opslaat, geeft u de waarde van SettingsKey door aan de eigenschap SettingsKey van de ApplicationSettingsBase-klasse. Toepassingsinstellingen gebruiken deze unieke sleutel wanneer deze de instellingen van de gebruiker op XML bewaart. In het volgende codevoorbeeld ziet u hoe een <userSettings>-sectie eruit kan zien voor een exemplaar van een aangepast besturingselement genaamd CustomControl1, dat een instelling voor de eigenschap Text opslaat.

<userSettings>
    <CustomControl1>
        <setting name="Text" serializedAs="string">
            <value>Hello, World</value>
        </setting>
    </CustomControl1>
</userSettings>

Alle exemplaren van een besturingselement die geen waarde voor SettingsKey leveren, delen dezelfde instellingen.

Zie ook