コード例 #1
0
        /// <summary>
        /// Creates UserControls on request.
        /// </summary>
        /// <param name="AUserControl">UserControl to load.</param>
        private UserControl DynamicLoadUserControl(TDynamicLoadableUserControls AUserControl)
        {
            UserControl ReturnValue = null;

            switch (AUserControl)
            {
                case TDynamicLoadableUserControls.dlucSpecialNeeds:
                    // Create a Panel that hosts the UserControl. This is needed to allow scrolling of content in case the screen is too small to shown the whole UserControl
                    Panel pnlHostForUCSpecialNeeds = new Panel();
                    pnlHostForUCSpecialNeeds.AutoSize = true;
                    pnlHostForUCSpecialNeeds.Dock = System.Windows.Forms.DockStyle.Fill;
                    pnlHostForUCSpecialNeeds.Location = new System.Drawing.Point(0, 0);
                    pnlHostForUCSpecialNeeds.Padding = new System.Windows.Forms.Padding(2);
                    pnlSelectedIndivDataItem.Controls.Add(pnlHostForUCSpecialNeeds);

                    // Create the UserControl
                    Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_SpecialNeeds ucoSpecialNeeds =
                        new Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_SpecialNeeds();
                    FUserControlSetup.Add(TDynamicLoadableUserControls.dlucSpecialNeeds, ucoSpecialNeeds);
                    ucoSpecialNeeds.Location = new Point(0, 2);
                    ucoSpecialNeeds.Dock = DockStyle.Fill;
                    pnlHostForUCSpecialNeeds.Controls.Add(ucoSpecialNeeds);

                    /*
                     * The following four commands seem strange and unnecessary; however, they are necessary
                     * to make things scale correctly on "Large Fonts (120DPI)" display setting.
                     */
                    if (TClientSettings.GUIRunningOnNonStandardDPI)
                    {
                        this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 13F);
                        this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
                        pnlHostForUCSpecialNeeds.Dock = System.Windows.Forms.DockStyle.None;
                        pnlHostForUCSpecialNeeds.Dock = System.Windows.Forms.DockStyle.Fill;
                    }

                    ReturnValue = ucoSpecialNeeds;
                    break;

                case TDynamicLoadableUserControls.dlucPersonalLanguages:
                    // Create a Panel that hosts the UserControl. This is needed to allow scrolling of content in case the screen is too small to shown the whole UserControl
                    Panel pnlHostForUCPersonalLanguages = new Panel();
                    pnlHostForUCPersonalLanguages.AutoSize = true;
                    pnlHostForUCPersonalLanguages.Dock = System.Windows.Forms.DockStyle.Fill;
                    pnlHostForUCPersonalLanguages.Location = new System.Drawing.Point(0, 0);
                    pnlHostForUCPersonalLanguages.Padding = new System.Windows.Forms.Padding(2);
                    pnlSelectedIndivDataItem.Controls.Add(pnlHostForUCPersonalLanguages);

                    // Create the UserControl
                    Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_PersonalLanguages ucoPersonalLanguages =
                        new Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_PersonalLanguages();
                    FUserControlSetup.Add(TDynamicLoadableUserControls.dlucPersonalLanguages, ucoPersonalLanguages);
                    ucoPersonalLanguages.Location = new Point(0, 2);
                    ucoPersonalLanguages.Dock = DockStyle.Fill;
                    pnlHostForUCPersonalLanguages.Controls.Add(ucoPersonalLanguages);

                    /*
                     * The following four commands seem strange and unnecessary; however, they are necessary
                     * to make things scale correctly on "Large Fonts (120DPI)" display setting.
                     */
                    if (TClientSettings.GUIRunningOnNonStandardDPI)
                    {
                        this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 13F);
                        this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
                        pnlHostForUCPersonalLanguages.Dock = System.Windows.Forms.DockStyle.None;
                        pnlHostForUCPersonalLanguages.Dock = System.Windows.Forms.DockStyle.Fill;
                    }

                    ReturnValue = ucoPersonalLanguages;
                    break;

                case TDynamicLoadableUserControls.dlucProgressReports:
                    // Create a Panel that hosts the UserControl. This is needed to allow scrolling of content in case the screen is too small to shown the whole UserControl
                    Panel pnlHostForUCProgressReports = new Panel();
                    pnlHostForUCProgressReports.AutoSize = true;
                    pnlHostForUCProgressReports.Dock = System.Windows.Forms.DockStyle.Fill;
                    pnlHostForUCProgressReports.Location = new System.Drawing.Point(0, 0);
                    pnlHostForUCProgressReports.Padding = new System.Windows.Forms.Padding(2);
                    pnlSelectedIndivDataItem.Controls.Add(pnlHostForUCProgressReports);

                    // Create the UserControl
                    Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_ProgressReports ucoProgressReports =
                        new Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_ProgressReports();
                    FUserControlSetup.Add(TDynamicLoadableUserControls.dlucProgressReports, ucoProgressReports);
                    ucoProgressReports.Location = new Point(0, 2);
                    ucoProgressReports.Dock = DockStyle.Fill;
                    pnlHostForUCProgressReports.Controls.Add(ucoProgressReports);

                    /*
                     * The following four commands seem strange and unnecessary; however, they are necessary
                     * to make things scale correctly on "Large Fonts (120DPI)" display setting.
                     */
                    if (TClientSettings.GUIRunningOnNonStandardDPI)
                    {
                        this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 13F);
                        this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
                        pnlHostForUCProgressReports.Dock = System.Windows.Forms.DockStyle.None;
                        pnlHostForUCProgressReports.Dock = System.Windows.Forms.DockStyle.Fill;
                    }

                    ReturnValue = ucoProgressReports;
                    break;

                case TDynamicLoadableUserControls.dlucCommitmentPeriods:
                    // Create a Panel that hosts the UserControl. This is needed to allow scrolling of content in case the screen is too small to shown the whole UserControl
                    Panel pnlHostForUCCommitmentPeriods = new Panel();
                    pnlHostForUCCommitmentPeriods.AutoSize = true;
                    pnlHostForUCCommitmentPeriods.Dock = System.Windows.Forms.DockStyle.Fill;
                    pnlHostForUCCommitmentPeriods.Location = new System.Drawing.Point(0, 0);
                    pnlHostForUCCommitmentPeriods.Padding = new System.Windows.Forms.Padding(2);
                    pnlSelectedIndivDataItem.Controls.Add(pnlHostForUCCommitmentPeriods);

                    // Create the UserControl
                    Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_CommitmentPeriods ucoCommitmentPeriods =
                        new Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_CommitmentPeriods();
                    FUserControlSetup.Add(TDynamicLoadableUserControls.dlucCommitmentPeriods, ucoCommitmentPeriods);
                    ucoCommitmentPeriods.Location = new Point(0, 2);
                    ucoCommitmentPeriods.Dock = DockStyle.Fill;
                    pnlHostForUCCommitmentPeriods.Controls.Add(ucoCommitmentPeriods);

                    /*
                     * The following four commands seem strange and unnecessary; however, they are necessary
                     * to make things scale correctly on "Large Fonts (120DPI)" display setting.
                     */
                    if (TClientSettings.GUIRunningOnNonStandardDPI)
                    {
                        this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 13F);
                        this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
                        pnlHostForUCCommitmentPeriods.Dock = System.Windows.Forms.DockStyle.None;
                        pnlHostForUCCommitmentPeriods.Dock = System.Windows.Forms.DockStyle.Fill;
                    }

                    ReturnValue = ucoCommitmentPeriods;
                    break;


                case TDynamicLoadableUserControls.dlucPersonSkills:
                    // Create a Panel that hosts the UserControl. This is needed to allow scrolling of content in case the screen is too small to shown the whole UserControl
                    Panel pnlHostForUCPersonSkills = new Panel();
                    pnlHostForUCPersonSkills.AutoSize = true;
                    pnlHostForUCPersonSkills.Dock = System.Windows.Forms.DockStyle.Fill;
                    pnlHostForUCPersonSkills.Location = new System.Drawing.Point(0, 0);
                    pnlHostForUCPersonSkills.Padding = new System.Windows.Forms.Padding(2);
                    pnlSelectedIndivDataItem.Controls.Add(pnlHostForUCPersonSkills);

                    // Create the UserControl
                    Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_PersonSkills ucoPersonSkills =
                        new Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_PersonSkills();
                    FUserControlSetup.Add(TDynamicLoadableUserControls.dlucPersonSkills, ucoPersonSkills);
                    ucoPersonSkills.Location = new Point(0, 2);
                    ucoPersonSkills.Dock = DockStyle.Fill;
                    pnlHostForUCPersonSkills.Controls.Add(ucoPersonSkills);

                    /*
                     * The following four commands seem strange and unnecessary; however, they are necessary
                     * to make things scale correctly on "Large Fonts (120DPI)" display setting.
                     */
                    if (TClientSettings.GUIRunningOnNonStandardDPI)
                    {
                        this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 13F);
                        this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
                        pnlHostForUCPersonSkills.Dock = System.Windows.Forms.DockStyle.None;
                        pnlHostForUCPersonSkills.Dock = System.Windows.Forms.DockStyle.Fill;
                    }

                    ReturnValue = ucoPersonSkills;
                    break;

                //Personal Abilities
                case TDynamicLoadableUserControls.dlucPersonalAbilities:
                    // Create a Panel that hosts the UserControl. This is needed to allow scrolling of content in case the screen is too small to shown the whole UserControl
                    Panel pnlHostForUCPersonalAblities = new Panel();
                    pnlHostForUCPersonalAblities.AutoSize = true;
                    pnlHostForUCPersonalAblities.Dock = System.Windows.Forms.DockStyle.Fill;
                    pnlHostForUCPersonalAblities.Location = new System.Drawing.Point(0, 0);
                    pnlHostForUCPersonalAblities.Padding = new System.Windows.Forms.Padding(2);
                    pnlSelectedIndivDataItem.Controls.Add(pnlHostForUCPersonalAblities);

                    // Create the UserControl
                    Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_Abilities ucoPersonalAbilities =
                        new Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_Abilities();
                    FUserControlSetup.Add(TDynamicLoadableUserControls.dlucPersonalAbilities, ucoPersonalAbilities);
                    ucoPersonalAbilities.Location = new Point(0, 2);
                    ucoPersonalAbilities.Dock = DockStyle.Fill;
                    pnlHostForUCPersonalAblities.Controls.Add(ucoPersonalAbilities);

                    /*
                     * The following four commands seem strange and unnecessary; however, they are necessary
                     * to make things scale correctly on "Large Fonts (120DPI)" display setting.
                     */
                    if (TClientSettings.GUIRunningOnNonStandardDPI)
                    {
                        this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 13F);
                        this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
                        pnlHostForUCPersonalAblities.Dock = System.Windows.Forms.DockStyle.None;
                        pnlHostForUCPersonalAblities.Dock = System.Windows.Forms.DockStyle.Fill;
                    }

                    ReturnValue = ucoPersonalAbilities;
                    break;

                //Passport Details
                case TDynamicLoadableUserControls.dlucPassportDetails:
                    // Create a Panel that hosts the UserControl. This is needed to allow scrolling of content in case the screen is too small to shown the whole UserControl
                    Panel pnlHostForUCPassport = new Panel();
                    pnlHostForUCPassport.AutoSize = true;
                    pnlHostForUCPassport.Dock = System.Windows.Forms.DockStyle.Fill;
                    pnlHostForUCPassport.Location = new System.Drawing.Point(0, 0);
                    pnlHostForUCPassport.Padding = new System.Windows.Forms.Padding(2);
                    pnlSelectedIndivDataItem.Controls.Add(pnlHostForUCPassport);

                    // Create the UserControl
                    Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_Passport ucoPassportDetails =
                        new Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_Passport();
                    FUserControlSetup.Add(TDynamicLoadableUserControls.dlucPassportDetails, ucoPassportDetails);
                    ucoPassportDetails.Location = new Point(0, 2);
                    ucoPassportDetails.Dock = DockStyle.Fill;
                    pnlHostForUCPassport.Controls.Add(ucoPassportDetails);

                    /*
                     * The following four commands seem strange and unnecessary; however, they are necessary
                     * to make things scale correctly on "Large Fonts (120DPI)" display setting.
                     */
                    if (TClientSettings.GUIRunningOnNonStandardDPI)
                    {
                        this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 13F);
                        this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
                        pnlHostForUCPassport.Dock = System.Windows.Forms.DockStyle.None;
                        pnlHostForUCPassport.Dock = System.Windows.Forms.DockStyle.Fill;
                    }

                    ReturnValue = ucoPassportDetails;
                    break;

                case TDynamicLoadableUserControls.dlucPersonalData:
                    // Create a Panel that hosts the UserControl. This is needed to allow scrolling of content in case the screen is too small to shown the whole UserControl
                    Panel pnlHostForUCPersonalData = new Panel();
                    pnlHostForUCPersonalData.AutoSize = true;
                    pnlHostForUCPersonalData.Dock = System.Windows.Forms.DockStyle.Fill;
                    pnlHostForUCPersonalData.Location = new System.Drawing.Point(0, 0);
                    pnlHostForUCPersonalData.Padding = new System.Windows.Forms.Padding(2);
                    pnlSelectedIndivDataItem.Controls.Add(pnlHostForUCPersonalData);

                    // Create the UserControl
                    Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_PersonalData ucoPersonalData =
                        new Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_PersonalData();
                    FUserControlSetup.Add(TDynamicLoadableUserControls.dlucPersonalData, ucoPersonalData);
                    ucoPersonalData.Location = new Point(0, 2);
                    ucoPersonalData.Dock = DockStyle.Fill;
                    pnlHostForUCPersonalData.Controls.Add(ucoPersonalData);

                    /*
                     * The following four commands seem strange and unnecessary; however, they are necessary
                     * to make things scale correctly on "Large Fonts (120DPI)" display setting.
                     */
                    if (TClientSettings.GUIRunningOnNonStandardDPI)
                    {
                        this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 13F);
                        this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
                        pnlHostForUCPersonalData.Dock = System.Windows.Forms.DockStyle.None;
                        pnlHostForUCPersonalData.Dock = System.Windows.Forms.DockStyle.Fill;
                    }

                    ReturnValue = ucoPersonalData;
                    break;

                case TDynamicLoadableUserControls.dlucEmergencyData:
                    // Create a Panel that hosts the UserControl. This is needed to allow scrolling of content in case the screen is too small to shown the whole UserControl
                    Panel pnlHostForUCEmergencyData = new Panel();
                    pnlHostForUCEmergencyData.AutoSize = true;
                    pnlHostForUCEmergencyData.Dock = System.Windows.Forms.DockStyle.Fill;
                    pnlHostForUCEmergencyData.Location = new System.Drawing.Point(0, 0);
                    pnlHostForUCEmergencyData.Padding = new System.Windows.Forms.Padding(2);
                    pnlSelectedIndivDataItem.Controls.Add(pnlHostForUCEmergencyData);

                    // Create the UserControl
                    Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_EmergencyData ucoEmergencyData =
                        new Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_EmergencyData();
                    FUserControlSetup.Add(TDynamicLoadableUserControls.dlucEmergencyData, ucoEmergencyData);
                    ucoEmergencyData.Location = new Point(0, 2);
                    ucoEmergencyData.Dock = DockStyle.Fill;
                    pnlHostForUCEmergencyData.Controls.Add(ucoEmergencyData);

                    /*
                     * The following four commands seem strange and unnecessary; however, they are necessary
                     * to make things scale correctly on "Large Fonts (120DPI)" display setting.
                     */
                    if (TClientSettings.GUIRunningOnNonStandardDPI)
                    {
                        this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 13F);
                        this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
                        pnlHostForUCEmergencyData.Dock = System.Windows.Forms.DockStyle.None;
                        pnlHostForUCEmergencyData.Dock = System.Windows.Forms.DockStyle.Fill;
                    }

                    ReturnValue = ucoEmergencyData;
                    break;

                case TDynamicLoadableUserControls.dlucPreviousExperience:
                    // Create a Panel that hosts the UserControl. This is needed to allow scrolling of content in case the screen is too small to shown the whole UserControl
                    Panel pnlHostForUCPreviousExperience = new Panel();
                    pnlHostForUCPreviousExperience.AutoSize = true;
                    pnlHostForUCPreviousExperience.Dock = System.Windows.Forms.DockStyle.Fill;
                    pnlHostForUCPreviousExperience.Location = new System.Drawing.Point(0, 0);
                    pnlHostForUCPreviousExperience.Padding = new System.Windows.Forms.Padding(2);
                    pnlSelectedIndivDataItem.Controls.Add(pnlHostForUCPreviousExperience);

                    // Create the UserControl
                    Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_PreviousExperience ucoPreviousExperience =
                        new Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_PreviousExperience();
                    FUserControlSetup.Add(TDynamicLoadableUserControls.dlucPreviousExperience, ucoPreviousExperience);
                    ucoPreviousExperience.Location = new Point(0, 2);
                    ucoPreviousExperience.Dock = DockStyle.Fill;
                    pnlHostForUCPreviousExperience.Controls.Add(ucoPreviousExperience);

                    /*
                     * The following four commands seem strange and unnecessary; however, they are necessary
                     * to make things scale correctly on "Large Fonts (120DPI)" display setting.
                     */
                    if (TClientSettings.GUIRunningOnNonStandardDPI)
                    {
                        this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 13F);
                        this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
                        pnlHostForUCPreviousExperience.Dock = System.Windows.Forms.DockStyle.None;
                        pnlHostForUCPreviousExperience.Dock = System.Windows.Forms.DockStyle.Fill;
                    }

                    ReturnValue = ucoPreviousExperience;
                    break;

                case TDynamicLoadableUserControls.dlucPersonalDocuments:
                    // Create a Panel that hosts the UserControl. This is needed to allow scrolling of content in case the screen is too small to shown the whole UserControl
                    Panel pnlHostForUCPersonalDocuments = new Panel();
                    pnlHostForUCPersonalDocuments.AutoSize = true;
                    pnlHostForUCPersonalDocuments.Dock = System.Windows.Forms.DockStyle.Fill;
                    pnlHostForUCPersonalDocuments.Location = new System.Drawing.Point(0, 0);
                    pnlHostForUCPersonalDocuments.Padding = new System.Windows.Forms.Padding(2);
                    pnlSelectedIndivDataItem.Controls.Add(pnlHostForUCPersonalDocuments);

                    // Create the UserControl
                    Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_PersonalDocuments ucoPersonalDocuments =
                        new Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_PersonalDocuments();
                    FUserControlSetup.Add(TDynamicLoadableUserControls.dlucPersonalDocuments, ucoPersonalDocuments);
                    ucoPersonalDocuments.Location = new Point(0, 2);
                    ucoPersonalDocuments.Dock = DockStyle.Fill;
                    pnlHostForUCPersonalDocuments.Controls.Add(ucoPersonalDocuments);

                    /*
                     * The following four commands seem strange and unnecessary; however, they are necessary
                     * to make things scale correctly on "Large Fonts (120DPI)" display setting.
                     */
                    if (TClientSettings.GUIRunningOnNonStandardDPI)
                    {
                        this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 13F);
                        this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
                        pnlHostForUCPersonalDocuments.Dock = System.Windows.Forms.DockStyle.None;
                        pnlHostForUCPersonalDocuments.Dock = System.Windows.Forms.DockStyle.Fill;
                    }

                    ReturnValue = ucoPersonalDocuments;
                    break;

                case TDynamicLoadableUserControls.dlucJobAssignments:
                    // Create a Panel that hosts the UserControl. This is needed to allow scrolling of content in case the screen is too small to shown the whole UserControl
                    Panel pnlHostForUCJobAssignments = new Panel();
                    pnlHostForUCJobAssignments.AutoSize = true;
                    pnlHostForUCJobAssignments.Dock = System.Windows.Forms.DockStyle.Fill;
                    pnlHostForUCJobAssignments.Location = new System.Drawing.Point(0, 0);
                    pnlHostForUCJobAssignments.Padding = new System.Windows.Forms.Padding(2);
                    pnlSelectedIndivDataItem.Controls.Add(pnlHostForUCJobAssignments);

                    // Create the UserControl
                    Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_JobAssignments ucoJobAssignments =
                        new Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_JobAssignments();
                    FUserControlSetup.Add(TDynamicLoadableUserControls.dlucJobAssignments, ucoJobAssignments);
                    ucoJobAssignments.Location = new Point(0, 2);
                    ucoJobAssignments.Dock = DockStyle.Fill;
                    pnlHostForUCJobAssignments.Controls.Add(ucoJobAssignments);

                    /*
                     * The following four commands seem strange and unnecessary; however, they are necessary
                     * to make things scale correctly on "Large Fonts (120DPI)" display setting.
                     */
                    if (TClientSettings.GUIRunningOnNonStandardDPI)
                    {
                        this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 13F);
                        this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
                        pnlHostForUCJobAssignments.Dock = System.Windows.Forms.DockStyle.None;
                        pnlHostForUCJobAssignments.Dock = System.Windows.Forms.DockStyle.Fill;
                    }

                    ReturnValue = ucoJobAssignments;
                    break;

                case TDynamicLoadableUserControls.dlucLocalPersonnelData:
                    // Create a Panel that hosts the UserControl. This is needed to allow scrolling of content in case the screen is too small to shown the whole UserControl
                    Panel pnlHostForUCLocalPersonnelData = new Panel();
                    pnlHostForUCLocalPersonnelData.AutoSize = true;
                    pnlHostForUCLocalPersonnelData.Dock = System.Windows.Forms.DockStyle.Fill;
                    pnlHostForUCLocalPersonnelData.Location = new System.Drawing.Point(0, 0);
                    pnlHostForUCLocalPersonnelData.Padding = new System.Windows.Forms.Padding(2);
                    pnlSelectedIndivDataItem.Controls.Add(pnlHostForUCLocalPersonnelData);

                    // Create the UserControl
                    Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_LocalPersonnelData ucoLocalPersonnelData =
                        new Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_LocalPersonnelData();
                    FUserControlSetup.Add(TDynamicLoadableUserControls.dlucLocalPersonnelData, ucoLocalPersonnelData);
                    ucoLocalPersonnelData.Location = new Point(0, 2);
                    ucoLocalPersonnelData.Dock = DockStyle.Fill;
                    pnlHostForUCLocalPersonnelData.Controls.Add(ucoLocalPersonnelData);

                    /*
                     * The following four commands seem strange and unnecessary; however, they are necessary
                     * to make things scale correctly on "Large Fonts (120DPI)" display setting.
                     */
                    if (TClientSettings.GUIRunningOnNonStandardDPI)
                    {
                        this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 13F);
                        this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
                        pnlHostForUCLocalPersonnelData.Dock = System.Windows.Forms.DockStyle.None;
                        pnlHostForUCLocalPersonnelData.Dock = System.Windows.Forms.DockStyle.Fill;
                    }

                    ReturnValue = ucoLocalPersonnelData;
                    break;
            }

            FPetraUtilsObject.RestoreAdditionalWindowPositionProperties();

            return ReturnValue;
        }
コード例 #2
0
        /// <summary>
        /// Event is fired when an Individual Data Item LinkLabel is 'clicked'.
        /// </summary>
        /// <param name="ASender">One of the Individual Data Item LinkLabels. Determines what action is taken.</param>
        /// <param name="e">Not evaluated.</param>
        /// <returns>void</returns>
        private void IndividualDataItemSelected(object ASender, EventArgs e)
        {
            if ((ASender != FCurrentLinkLabel)
                && !ValidateCurrentDataItem())
            {
                // do not accept new link section if current one is not validated properly
                return;
            }

            /*
             * Raise the following Event to inform the base Form that we might be loading some fresh data.
             * We need to bypass the ChangeDetection routine while this happens.
             */
            OnDataLoadingStarted(this, new EventArgs());

            ResetAllBackColors();

            if (ASender == llbOverview)
            {
                ucoSummaryData.BringToFront();
                llbOverview.BackColor = PanelHelperBackGround;
            }
            else if (ASender == llbSpecialNeeds)
            {
                if (!FUserControlSetup.ContainsKey(TDynamicLoadableUserControls.dlucSpecialNeeds))
                {
                    if (TClientSettings.DelayedDataLoading)
                    {
                        // Signalise the user that data is beeing loaded
                        this.Cursor = Cursors.AppStarting;
                    }

                    FUcoSpecialNeeds = (Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_SpecialNeeds)DynamicLoadUserControl(
                        TDynamicLoadableUserControls.dlucSpecialNeeds);
                    FUcoSpecialNeeds.MainDS = FMainDS;
                    FUcoSpecialNeeds.PetraUtilsObject = FPetraUtilsObject;
                    FUcoSpecialNeeds.PartnerEditUIConnector = FPartnerEditUIConnector;
                    FUcoSpecialNeeds.SpecialInitUserControl(FMainDS);
                    FUcoSpecialNeeds.InitUserControl();
                    ((IFrmPetraEdit)(this.ParentForm)).GetPetraUtilsObject().HookupAllInContainer(FUcoSpecialNeeds);

                    // The following code is not needed at the moment unless there would be some special initialization later on
                    // beyond what it is done in SpecialInitUserControl
                    //OnTabPageEvent(new TTabPageEventArgs(tpgPartnerTypes, FUcoPartnerTypes, "InitialActivation"));

                    this.Cursor = Cursors.Default;
                }
                else
                {
                    // The following code is not needed at the moment unless there would be some special initialization later on
                    // beyond what it is done in SpecialInitUserControl
                    //OnTabPageEvent(new TTabPageEventArgs(tpgPartnerTypes, FUcoPartnerTypes, "SubsequentActivation"));

                    /*
                     * The following command seems strange and unnecessary; however, it is necessary
                     * to make things scale correctly on "Large Fonts (120DPI)" display setting.
                     */
                    if (TClientSettings.GUIRunningOnNonStandardDPI)
                    {
                        FUcoSpecialNeeds.AdjustAfterResizing();
                    }
                }

                llbSpecialNeeds.BackColor = PanelHelperBackGround;

                LimitTabStopToItem(FUcoSpecialNeeds);
                FUcoSpecialNeeds.Parent.BringToFront();
            }
            else if (ASender == llbLanguages)
            {
                if (!FUserControlSetup.ContainsKey(TDynamicLoadableUserControls.dlucPersonalLanguages))
                {
                    if (TClientSettings.DelayedDataLoading)
                    {
                        // Signalise the user that data is beeing loaded
                        this.Cursor = Cursors.AppStarting;
                    }

                    FUcoPersonalLanguages = (Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_PersonalLanguages)DynamicLoadUserControl(
                        TDynamicLoadableUserControls.dlucPersonalLanguages);

                    // Hook up RecalculateScreenParts Event
                    FUcoPersonalLanguages.RecalculateScreenParts += new TRecalculateScreenPartsEventHandler(RecalculateLinkLabelCounters);

                    FUcoPersonalLanguages.MainDS = FMainDS;
                    FUcoPersonalLanguages.PetraUtilsObject = FPetraUtilsObject;
                    FUcoPersonalLanguages.PartnerEditUIConnector = FPartnerEditUIConnector;
                    FUcoPersonalLanguages.SpecialInitUserControl(FMainDS);
                    FUcoPersonalLanguages.InitUserControl();
                    ((IFrmPetraEdit)(this.ParentForm)).GetPetraUtilsObject().HookupAllInContainer(FUcoPersonalLanguages);

                    // The following code is not needed at the moment unless there would be some special initialization later on
                    // beyond what it is done in SpecialInitUserControl
                    //OnTabPageEvent(new TTabPageEventArgs(tpgPartnerTypes, FUcoPartnerTypes, "InitialActivation"));

                    this.Cursor = Cursors.Default;
                }
                else
                {
                    // The following code is not needed at the moment unless there would be some special initialization later on
                    // beyond what it is done in SpecialInitUserControl
                    //OnTabPageEvent(new TTabPageEventArgs(tpgPartnerTypes, FUcoPartnerTypes, "SubsequentActivation"));

                    /*
                     * The following command seems strange and unnecessary; however, it is necessary
                     * to make things scale correctly on "Large Fonts (120DPI)" display setting.
                     */
                    if (TClientSettings.GUIRunningOnNonStandardDPI)
                    {
                        FUcoPersonalLanguages.AdjustAfterResizing();
                    }
                }

                llbLanguages.BackColor = PanelHelperBackGround;

                LimitTabStopToItem(FUcoPersonalLanguages);
                FUcoPersonalLanguages.Parent.BringToFront();
            }
            else if (ASender == llbProgressReports)
            {
                if (!FUserControlSetup.ContainsKey(TDynamicLoadableUserControls.dlucProgressReports))
                {
                    if (TClientSettings.DelayedDataLoading)
                    {
                        // Signalise the user that data is beeing loaded
                        this.Cursor = Cursors.AppStarting;
                    }

                    FUcoProgressReports = (Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_ProgressReports)DynamicLoadUserControl(
                        TDynamicLoadableUserControls.dlucProgressReports);

                    // Hook up RecalculateScreenParts Event
                    FUcoProgressReports.RecalculateScreenParts += new TRecalculateScreenPartsEventHandler(RecalculateLinkLabelCounters);

                    FUcoProgressReports.MainDS = FMainDS;
                    FUcoProgressReports.PetraUtilsObject = FPetraUtilsObject;
                    FUcoProgressReports.PartnerEditUIConnector = FPartnerEditUIConnector;
                    FUcoProgressReports.SpecialInitUserControl(FMainDS);
                    FUcoProgressReports.InitUserControl();
                    ((IFrmPetraEdit)(this.ParentForm)).GetPetraUtilsObject().HookupAllInContainer(FUcoProgressReports);

                    // The following code is not needed at the moment unless there would be some special initialization later on
                    // beyond what it is done in SpecialInitUserControl
                    //OnTabPageEvent(new TTabPageEventArgs(tpgPartnerTypes, FUcoPartnerTypes, "InitialActivation"));

                    this.Cursor = Cursors.Default;
                }
                else
                {
                    // The following code is not needed at the moment unless there would be some special initialization later on
                    // beyond what it is done in SpecialInitUserControl
                    //OnTabPageEvent(new TTabPageEventArgs(tpgPartnerTypes, FUcoPartnerTypes, "SubsequentActivation"));

                    /*
                     * The following command seems strange and unnecessary; however, it is necessary
                     * to make things scale correctly on "Large Fonts (120DPI)" display setting.
                     */
                    if (TClientSettings.GUIRunningOnNonStandardDPI)
                    {
                        FUcoProgressReports.AdjustAfterResizing();
                    }
                }

                llbProgressReports.BackColor = PanelHelperBackGround;

                LimitTabStopToItem(FUcoProgressReports);
                FUcoProgressReports.Parent.BringToFront();
            }
            else if (ASender == llbCommitmentPeriods)
            {
                if (!FUserControlSetup.ContainsKey(TDynamicLoadableUserControls.dlucCommitmentPeriods))
                {
                    if (TClientSettings.DelayedDataLoading)
                    {
                        // Signalise the user that data is beeing loaded
                        this.Cursor = Cursors.AppStarting;
                    }

                    FUcoCommitmentPeriods = (Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_CommitmentPeriods)DynamicLoadUserControl(
                        TDynamicLoadableUserControls.dlucCommitmentPeriods);

                    // Hook up RecalculateScreenParts Event
                    FUcoCommitmentPeriods.RecalculateScreenParts += new TRecalculateScreenPartsEventHandler(RecalculateLinkLabelCounters);

                    FUcoCommitmentPeriods.MainDS = FMainDS;
                    FUcoCommitmentPeriods.PetraUtilsObject = FPetraUtilsObject;
                    FUcoCommitmentPeriods.PartnerEditUIConnector = FPartnerEditUIConnector;
                    FUcoCommitmentPeriods.SpecialInitUserControl(FMainDS);
                    FUcoCommitmentPeriods.InitUserControl();
                    ((IFrmPetraEdit)(this.ParentForm)).GetPetraUtilsObject().HookupAllInContainer(FUcoCommitmentPeriods);

                    // The following code is not needed at the moment unless there would be some special initialization later on
                    // beyond what it is done in SpecialInitUserControl
                    //OnTabPageEvent(new TTabPageEventArgs(tpgPartnerTypes, FUcoPartnerTypes, "InitialActivation"));

                    this.Cursor = Cursors.Default;
                }
                else
                {
                    // The following code is not needed at the moment unless there would be some special initialization later on
                    // beyond what it is done in SpecialInitUserControl
                    //OnTabPageEvent(new TTabPageEventArgs(tpgPartnerTypes, FUcoPartnerTypes, "SubsequentActivation"));

                    /*
                     * The following command seems strange and unnecessary; however, it is necessary
                     * to make things scale correctly on "Large Fonts (120DPI)" display setting.
                     */
                    if (TClientSettings.GUIRunningOnNonStandardDPI)
                    {
                        FUcoCommitmentPeriods.AdjustAfterResizing();
                    }
                }

                llbCommitmentPeriods.BackColor = PanelHelperBackGround;

                LimitTabStopToItem(FUcoCommitmentPeriods);
                FUcoCommitmentPeriods.Parent.BringToFront();
            }
            else if (ASender == llbPersonSkills)
            {
                if (!FUserControlSetup.ContainsKey(TDynamicLoadableUserControls.dlucPersonSkills))
                {
                    if (TClientSettings.DelayedDataLoading)
                    {
                        // Signalise the user that data is beeing loaded
                        this.Cursor = Cursors.AppStarting;
                    }

                    FUcoPersonSkills = (Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_PersonSkills)DynamicLoadUserControl(
                        TDynamicLoadableUserControls.dlucPersonSkills);

                    // Hook up RecalculateScreenParts Event
                    FUcoPersonSkills.RecalculateScreenParts += new TRecalculateScreenPartsEventHandler(RecalculateLinkLabelCounters);

                    FUcoPersonSkills.MainDS = FMainDS;
                    FUcoPersonSkills.PetraUtilsObject = FPetraUtilsObject;
                    FUcoPersonSkills.PartnerEditUIConnector = FPartnerEditUIConnector;
                    FUcoPersonSkills.SpecialInitUserControl(FMainDS);
                    FUcoPersonSkills.InitUserControl();
                    ((IFrmPetraEdit)(this.ParentForm)).GetPetraUtilsObject().HookupAllInContainer(FUcoPersonSkills);

                    // The following code is not needed at the moment unless there would be some special initialization later on
                    // beyond what it is done in SpecialInitUserControl
                    //OnTabPageEvent(new TTabPageEventArgs(tpgPartnerTypes, FUcoPartnerTypes, "InitialActivation"));

                    this.Cursor = Cursors.Default;
                }
                else
                {
                    // The following code is not needed at the moment unless there would be some special initialization later on
                    // beyond what it is done in SpecialInitUserControl
                    //OnTabPageEvent(new TTabPageEventArgs(tpgPartnerTypes, FUcoPartnerTypes, "SubsequentActivation"));

                    /*
                     * The following command seems strange and unnecessary; however, it is necessary
                     * to make things scale correctly on "Large Fonts (120DPI)" display setting.
                     */
                    if (TClientSettings.GUIRunningOnNonStandardDPI)
                    {
                        FUcoPersonSkills.AdjustAfterResizing();
                    }
                }

                llbPersonSkills.BackColor = PanelHelperBackGround;

                LimitTabStopToItem(FUcoPersonSkills);
                FUcoPersonSkills.Parent.BringToFront();
            }
            else if (ASender == llbPersonalAbilities)
            {
                if (!FUserControlSetup.ContainsKey(TDynamicLoadableUserControls.dlucPersonalAbilities))
                {
                    if (TClientSettings.DelayedDataLoading)
                    {
                        // Signalise the user that data is beeing loaded
                        this.Cursor = Cursors.AppStarting;
                    }

                    FUcoPersonalAbilities = (Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_Abilities)DynamicLoadUserControl(
                        TDynamicLoadableUserControls.dlucPersonalAbilities);

                    // Hook up RecalculateScreenParts Event
                    FUcoPersonalAbilities.RecalculateScreenParts += new TRecalculateScreenPartsEventHandler(RecalculateLinkLabelCounters);

                    FUcoPersonalAbilities.MainDS = FMainDS;
                    FUcoPersonalAbilities.PetraUtilsObject = FPetraUtilsObject;
                    FUcoPersonalAbilities.PartnerEditUIConnector = FPartnerEditUIConnector;
                    FUcoPersonalAbilities.SpecialInitUserControl(FMainDS);
                    FUcoPersonalAbilities.InitUserControl();
                    ((IFrmPetraEdit)(this.ParentForm)).GetPetraUtilsObject().HookupAllInContainer(FUcoPersonalAbilities);

                    // The following code is not needed at the moment unless there would be some special initialization later on
                    // beyond what it is done in SpecialInitUserControl
                    //OnTabPageEvent(new TTabPageEventArgs(tpgPartnerTypes, FUcoPartnerTypes, "InitialActivation"));

                    this.Cursor = Cursors.Default;
                }
                else
                {
                    // The following code is not needed at the moment unless there would be some special initialization later on
                    // beyond what it is done in SpecialInitUserControl
                    //OnTabPageEvent(new TTabPageEventArgs(tpgPartnerTypes, FUcoPartnerTypes, "SubsequentActivation"));

                    /*
                     * The following command seems strange and unnecessary; however, it is necessary
                     * to make things scale correctly on "Large Fonts (120DPI)" display setting.
                     */
                    if (TClientSettings.GUIRunningOnNonStandardDPI)
                    {
                        FUcoPersonalAbilities.AdjustAfterResizing();
                    }
                }

                llbPersonalAbilities.BackColor = PanelHelperBackGround;

                LimitTabStopToItem(FUcoPersonalAbilities);
                FUcoPersonalAbilities.Parent.BringToFront();
            }
            else if (ASender == llbPassportDetails)
            {
                if (!FUserControlSetup.ContainsKey(TDynamicLoadableUserControls.dlucPassportDetails))
                {
                    if (TClientSettings.DelayedDataLoading)
                    {
                        // Signalise the user that data is beeing loaded
                        this.Cursor = Cursors.AppStarting;
                    }

                    FUcoPassportDetails = (Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_Passport)DynamicLoadUserControl(
                        TDynamicLoadableUserControls.dlucPassportDetails);

                    // Hook up RecalculateScreenParts Event
                    FUcoPassportDetails.RecalculateScreenParts += new TRecalculateScreenPartsEventHandler(RecalculateLinkLabelCounters);

                    FUcoPassportDetails.MainDS = FMainDS;
                    FUcoPassportDetails.PetraUtilsObject = FPetraUtilsObject;
                    FUcoPassportDetails.PartnerEditUIConnector = FPartnerEditUIConnector;
                    FUcoPassportDetails.SpecialInitUserControl(FMainDS);
                    FUcoPassportDetails.InitUserControl();
                    ((IFrmPetraEdit)(this.ParentForm)).GetPetraUtilsObject().HookupAllInContainer(FUcoPassportDetails);

                    // The following code is not needed at the moment unless there would be some special initialization later on
                    // beyond what it is done in SpecialInitUserControl
                    //OnTabPageEvent(new TTabPageEventArgs(tpgPartnerTypes, FUcoPartnerTypes, "InitialActivation"));

                    this.Cursor = Cursors.Default;
                }
                else
                {
                    // The following code is not needed at the moment unless there would be some special initialization later on
                    // beyond what it is done in SpecialInitUserControl
                    //OnTabPageEvent(new TTabPageEventArgs(tpgPartnerTypes, FUcoPartnerTypes, "SubsequentActivation"));

                    /*
                     * The following command seems strange and unnecessary; however, it is necessary
                     * to make things scale correctly on "Large Fonts (120DPI)" display setting.
                     */
                    if (TClientSettings.GUIRunningOnNonStandardDPI)
                    {
                        FUcoPassportDetails.AdjustAfterResizing();
                    }
                }

                llbPassportDetails.BackColor = PanelHelperBackGround;

                LimitTabStopToItem(FUcoPassportDetails);
                FUcoPassportDetails.Parent.BringToFront();
            }
            else if (ASender == llbPersonalData)
            {
                if (!FUserControlSetup.ContainsKey(TDynamicLoadableUserControls.dlucPersonalData))
                {
                    if (TClientSettings.DelayedDataLoading)
                    {
                        // Signalise the user that data is beeing loaded
                        this.Cursor = Cursors.AppStarting;
                    }

                    FUcoPersonalData = (Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_PersonalData)DynamicLoadUserControl(
                        TDynamicLoadableUserControls.dlucPersonalData);
                    FUcoPersonalData.MainDS = FMainDS;
                    FUcoPersonalData.PetraUtilsObject = FPetraUtilsObject;
                    FUcoPersonalData.PartnerEditUIConnector = FPartnerEditUIConnector;
                    FUcoPersonalData.SpecialInitUserControl(FMainDS);
                    FUcoPersonalData.InitUserControl();
                    ((IFrmPetraEdit)(this.ParentForm)).GetPetraUtilsObject().HookupAllInContainer(FUcoPersonalData);

                    // The following code is not needed at the moment unless there would be some special initialization later on
                    // beyond what it is done in SpecialInitUserControl
                    //OnTabPageEvent(new TTabPageEventArgs(tpgPartnerTypes, FUcoPartnerTypes, "InitialActivation"));

                    this.Cursor = Cursors.Default;
                }
                else
                {
                    // The following code is not needed at the moment unless there would be some special initialization later on
                    // beyond what it is done in SpecialInitUserControl
                    //OnTabPageEvent(new TTabPageEventArgs(tpgPartnerTypes, FUcoPartnerTypes, "SubsequentActivation"));

                    /*
                     * The following command seems strange and unnecessary; however, it is necessary
                     * to make things scale correctly on "Large Fonts (120DPI)" display setting.
                     */
                    if (TClientSettings.GUIRunningOnNonStandardDPI)
                    {
                        FUcoPersonalData.AdjustAfterResizing();
                    }
                }

                llbPersonalData.BackColor = PanelHelperBackGround;

                LimitTabStopToItem(FUcoPersonalData);
                FUcoPersonalData.Parent.BringToFront();
            }
            else if (ASender == llbEmergencyData)
            {
                if (!FUserControlSetup.ContainsKey(TDynamicLoadableUserControls.dlucEmergencyData))
                {
                    if (TClientSettings.DelayedDataLoading)
                    {
                        // Signalise the user that data is beeing loaded
                        this.Cursor = Cursors.AppStarting;
                    }

                    FUcoEmergencyData = (Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_EmergencyData)DynamicLoadUserControl(
                        TDynamicLoadableUserControls.dlucEmergencyData);
                    FUcoEmergencyData.MainDS = FMainDS;
                    FUcoEmergencyData.PetraUtilsObject = FPetraUtilsObject;
                    FUcoEmergencyData.PartnerEditUIConnector = FPartnerEditUIConnector;
                    FUcoEmergencyData.SpecialInitUserControl(FMainDS);
                    FUcoEmergencyData.InitUserControl();
                    ((IFrmPetraEdit)(this.ParentForm)).GetPetraUtilsObject().HookupAllInContainer(FUcoEmergencyData);

                    // The following code is not needed at the moment unless there would be some special initialization later on
                    // beyond what it is done in SpecialInitUserControl
                    //OnTabPageEvent(new TTabPageEventArgs(tpgPartnerTypes, FUcoPartnerTypes, "InitialActivation"));

                    this.Cursor = Cursors.Default;
                }
                else
                {
                    // The following code is not needed at the moment unless there would be some special initialization later on
                    // beyond what it is done in SpecialInitUserControl
                    //OnTabPageEvent(new TTabPageEventArgs(tpgEmergencyData, FUcoEmergencyData, "SubsequentActivation"));

                    /*
                     * The following command seems strange and unnecessary; however, it is necessary
                     * to make things scale correctly on "Large Fonts (120DPI)" display setting.
                     */
                    if (TClientSettings.GUIRunningOnNonStandardDPI)
                    {
                        FUcoEmergencyData.AdjustAfterResizing();
                    }
                }

                llbEmergencyData.BackColor = PanelHelperBackGround;

                LimitTabStopToItem(FUcoEmergencyData);
                FUcoEmergencyData.Parent.BringToFront();
            }
            else if (ASender == llbPreviousExperience)
            {
                if (!FUserControlSetup.ContainsKey(TDynamicLoadableUserControls.dlucPreviousExperience))
                {
                    if (TClientSettings.DelayedDataLoading)
                    {
                        // Signalise the user that data is beeing loaded
                        this.Cursor = Cursors.AppStarting;
                    }

                    FUcoPreviousExperience = (Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_PreviousExperience)DynamicLoadUserControl(
                        TDynamicLoadableUserControls.dlucPreviousExperience);

                    // Hook up RecalculateScreenParts Event
                    FUcoPreviousExperience.RecalculateScreenParts += new TRecalculateScreenPartsEventHandler(RecalculateLinkLabelCounters);

                    FUcoPreviousExperience.MainDS = FMainDS;
                    FUcoPreviousExperience.PetraUtilsObject = FPetraUtilsObject;
                    FUcoPreviousExperience.PartnerEditUIConnector = FPartnerEditUIConnector;
                    FUcoPreviousExperience.SpecialInitUserControl(FMainDS);
                    FUcoPreviousExperience.InitUserControl();
                    ((IFrmPetraEdit)(this.ParentForm)).GetPetraUtilsObject().HookupAllInContainer(FUcoPreviousExperience);

                    // The following code is not needed at the moment unless there would be some special initialization later on
                    // beyond what it is done in SpecialInitUserControl
                    //OnTabPageEvent(new TTabPageEventArgs(tpgPartnerTypes, FUcoPartnerTypes, "InitialActivation"));

                    this.Cursor = Cursors.Default;
                }
                else
                {
                    // The following code is not needed at the moment unless there would be some special initialization later on
                    // beyond what it is done in SpecialInitUserControl
                    //OnTabPageEvent(new TTabPageEventArgs(tpgPartnerTypes, FUcoPartnerTypes, "SubsequentActivation"));

                    /*
                     * The following command seems strange and unnecessary; however, it is necessary
                     * to make things scale correctly on "Large Fonts (120DPI)" display setting.
                     */
                    if (TClientSettings.GUIRunningOnNonStandardDPI)
                    {
                        FUcoPreviousExperience.AdjustAfterResizing();
                    }
                }

                llbPreviousExperience.BackColor = PanelHelperBackGround;

                LimitTabStopToItem(FUcoPreviousExperience);
                FUcoPreviousExperience.Parent.BringToFront();
            }
            else if (ASender == llbPersonalDocuments)
            {
                if (!FUserControlSetup.ContainsKey(TDynamicLoadableUserControls.dlucPersonalDocuments))
                {
                    if (TClientSettings.DelayedDataLoading)
                    {
                        // Signalise the user that data is beeing loaded
                        this.Cursor = Cursors.AppStarting;
                    }

                    FUcoPersonalDocuments = (Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_PersonalDocuments)DynamicLoadUserControl(
                        TDynamicLoadableUserControls.dlucPersonalDocuments);

                    // Hook up RecalculateScreenParts Event
                    FUcoPersonalDocuments.RecalculateScreenParts += new TRecalculateScreenPartsEventHandler(RecalculateLinkLabelCounters);

                    FUcoPersonalDocuments.MainDS = FMainDS;
                    FUcoPersonalDocuments.PetraUtilsObject = FPetraUtilsObject;
                    FUcoPersonalDocuments.PartnerEditUIConnector = FPartnerEditUIConnector;
                    FUcoPersonalDocuments.SpecialInitUserControl(FMainDS);
                    FUcoPersonalDocuments.InitUserControl();
                    ((IFrmPetraEdit)(this.ParentForm)).GetPetraUtilsObject().HookupAllInContainer(FUcoPersonalDocuments);

                    // The following code is not needed at the moment unless there would be some special initialization later on
                    // beyond what it is done in SpecialInitUserControl
                    //OnTabPageEvent(new TTabPageEventArgs(tpgPartnerTypes, FUcoPartnerTypes, "InitialActivation"));

                    this.Cursor = Cursors.Default;
                }
                else
                {
                    // The following code is not needed at the moment unless there would be some special initialization later on
                    // beyond what it is done in SpecialInitUserControl
                    //OnTabPageEvent(new TTabPageEventArgs(tpgPartnerTypes, FUcoPartnerTypes, "SubsequentActivation"));

                    /*
                     * The following command seems strange and unnecessary; however, it is necessary
                     * to make things scale correctly on "Large Fonts (120DPI)" display setting.
                     */
                    if (TClientSettings.GUIRunningOnNonStandardDPI)
                    {
                        FUcoPersonalDocuments.AdjustAfterResizing();
                    }
                }

                llbPersonalDocuments.BackColor = PanelHelperBackGround;

                LimitTabStopToItem(FUcoPersonalDocuments);
                FUcoPersonalDocuments.Parent.BringToFront();
            }
            else if (ASender == llbJobAssignments)
            {
                if (!FUserControlSetup.ContainsKey(TDynamicLoadableUserControls.dlucJobAssignments))
                {
                    if (TClientSettings.DelayedDataLoading)
                    {
                        // Signalise the user that data is beeing loaded
                        this.Cursor = Cursors.AppStarting;
                    }

                    FUcoJobAssignments = (Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_JobAssignments)DynamicLoadUserControl(
                        TDynamicLoadableUserControls.dlucJobAssignments);

                    // Hook up RecalculateScreenParts Event

                    FUcoJobAssignments.RecalculateScreenParts += new TRecalculateScreenPartsEventHandler(RecalculateLinkLabelCounters);

                    FUcoJobAssignments.MainDS = FMainDS;
                    FUcoJobAssignments.PetraUtilsObject = FPetraUtilsObject;
                    FUcoJobAssignments.PartnerEditUIConnector = FPartnerEditUIConnector;
                    FUcoJobAssignments.SpecialInitUserControl(FMainDS);
                    FUcoJobAssignments.InitUserControl();
                    ((IFrmPetraEdit)(this.ParentForm)).GetPetraUtilsObject().HookupAllInContainer(FUcoJobAssignments);

                    // The following code is not needed at the moment unless there would be some special initialization later on
                    // beyond what it is done in SpecialInitUserControl
                    //OnTabPageEvent(new TTabPageEventArgs(tpgPartnerTypes, FUcoPartnerTypes, "InitialActivation"));

                    this.Cursor = Cursors.Default;
                }
                else
                {
                    // The following code is not needed at the moment unless there would be some special initialization later on
                    // beyond what it is done in SpecialInitUserControl
                    //OnTabPageEvent(new TTabPageEventArgs(tpgPartnerTypes, FUcoPartnerTypes, "SubsequentActivation"));

                    /*
                     * The following command seems strange and unnecessary; however, it is necessary
                     * to make things scale correctly on "Large Fonts (120DPI)" display setting.
                     */
                    if (TClientSettings.GUIRunningOnNonStandardDPI)
                    {
                        FUcoJobAssignments.AdjustAfterResizing();
                    }
                }

                llbJobAssignments.BackColor = PanelHelperBackGround;

                LimitTabStopToItem(FUcoJobAssignments);
                FUcoJobAssignments.Parent.BringToFront();
            }
            else if (ASender == llbLocalPersonnelData)
            {
                if (!FUserControlSetup.ContainsKey(TDynamicLoadableUserControls.dlucLocalPersonnelData))
                {
                    if (TClientSettings.DelayedDataLoading)
                    {
                        // Signalise the user that data is beeing loaded
                        this.Cursor = Cursors.AppStarting;
                    }

                    FUcoLocalPersonnelData = (Ict.Petra.Client.MPartner.Gui.TUC_IndividualData_LocalPersonnelData)DynamicLoadUserControl(
                        TDynamicLoadableUserControls.dlucLocalPersonnelData);

                    // Hook up RecalculateScreenParts Event
                    //FUcoLocalPersonnelData.RecalculateScreenParts += new TRecalculateScreenPartsEventHandler(RecalculateLinkLabelCounters);

                    FUcoLocalPersonnelData.MainDS = FMainDS;
                    FUcoLocalPersonnelData.PetraUtilsObject = FPetraUtilsObject;
                    FUcoLocalPersonnelData.PartnerEditUIConnector = FPartnerEditUIConnector;
                    FUcoLocalPersonnelData.InitUserControl();
                    FUcoLocalPersonnelData.SpecialInitUserControl();
                    ((IFrmPetraEdit)(this.ParentForm)).GetPetraUtilsObject().HookupAllInContainer(FUcoLocalPersonnelData);

                    // The following code is not needed at the moment unless there would be some special initialization later on
                    // beyond what it is done in SpecialInitUserControl
                    //OnTabPageEvent(new TTabPageEventArgs(tpgPartnerTypes, FUcoPartnerTypes, "InitialActivation"));

                    this.Cursor = Cursors.Default;
                }
                else
                {
                    // The following code is not needed at the moment unless there would be some special initialization later on
                    // beyond what it is done in SpecialInitUserControl
                    //OnTabPageEvent(new TTabPageEventArgs(tpgPartnerTypes, FUcoPartnerTypes, "SubsequentActivation"));

                    /*
                     * The following command seems strange and unnecessary; however, it is necessary
                     * to make things scale correctly on "Large Fonts (120DPI)" display setting.
                     */
                    if (TClientSettings.GUIRunningOnNonStandardDPI)
                    {
                        FUcoLocalPersonnelData.AdjustAfterResizing();
                    }
                }

                llbLocalPersonnelData.BackColor = PanelHelperBackGround;

                LimitTabStopToItem(FUcoLocalPersonnelData);
                FUcoLocalPersonnelData.Parent.BringToFront();
            }

            // remember the currently selected link label
            FCurrentLinkLabel = ASender as LinkLabel;

            /*
             * Raise the following Event to inform the base Form that we have finished loading fresh data.
             * We need to turn the ChangeDetection routine back on.
             */
            OnDataLoadingFinished(this, new EventArgs());
        }