/// <summary>
        /// Populates the grid for the dialog for selecting Addresses to be merged.
        /// </summary>
        public bool InitializeAddressGrid(long APartnerKey)
        {
            // set text for label
            lblInfo.Text = Catalog.GetString("The following addresses exist for the Partner being merged. Select the addresses to be transferred.") +
                           "\n\n" + Catalog.GetString("Any addresses which are not selected will be deleted!");

            string CheckedMember = "CHECKED";
            string Address1      = PLocationTable.GetLocalityDBName();
            string Street2       = PLocationTable.GetStreetNameDBName();
            string Address3      = PLocationTable.GetAddress3DBName();
            string City          = PLocationTable.GetCityDBName();
            string LocationKey   = PLocationTable.GetLocationKeyDBName();
            string SiteKey       = PLocationTable.GetSiteKeyDBName();
            string LocationType  = PPartnerLocationTable.GetLocationTypeDBName();


            FMainDS = TRemote.MPartner.Partner.WebConnectors.GetPartnerDetails(APartnerKey, true, false, false);

            if ((FMainDS != null) && (FMainDS.PLocation != null) && (FMainDS.PLocation.Rows.Count > 0))
            {
                DataView MyDataView = FMainDS.PLocation.DefaultView;

                FDataTable = MyDataView.ToTable(true, new string[] { Address1, Street2, Address3, City, LocationKey, SiteKey });
                FDataTable.Columns.Add(new DataColumn(CheckedMember, typeof(bool)));
                FDataTable.Columns.Add(LocationType, typeof(string));

                for (int Counter = 0; Counter < FMainDS.PLocation.Rows.Count; ++Counter)
                {
                    FDataTable.Rows[Counter][LocationType] = FMainDS.PPartnerLocation.Rows[Counter][LocationType];
                }

                clbRecords.Columns.Clear();
                clbRecords.AddCheckBoxColumn("", FDataTable.Columns[CheckedMember], 17, false);
                clbRecords.AddTextColumn("Address-1", FDataTable.Columns[Address1]);
                clbRecords.AddTextColumn("Street-2", FDataTable.Columns[Street2]);
                clbRecords.AddTextColumn("Address-3", FDataTable.Columns[Address3]);
                clbRecords.AddTextColumn("City", FDataTable.Columns[City]);
                clbRecords.AddTextColumn("Location Type", FDataTable.Columns[LocationType]);
                clbRecords.ValueChanged += new EventHandler(OnCheckboxChange);

                clbRecords.DataBindGrid(FDataTable, Address1, CheckedMember, Address1, false, true, false);
                clbRecords.SetCheckedStringList("");

                clbRecords.AutoResizeGrid();

                return(true);
            }
            else
            {
                return(false);
            }
        }
        /// <summary>
        /// The screen has been shown
        /// </summary>
        private void RunOnceOnActivationManual()
        {
            // enable autofind in list for first character (so the user can press character to find list entry)
            this.clbAddress.AutoFindColumn = ((Int16)(1));
            this.clbAddress.AutoFindMode   = Ict.Common.Controls.TAutoFindModeEnum.FirstCharacter;

            clbAddress.SpecialKeys =
                ((SourceGrid.GridSpecialKeys)((((((SourceGrid.GridSpecialKeys.Arrows |
                                                   SourceGrid.GridSpecialKeys.PageDownUp) |
                                                  SourceGrid.GridSpecialKeys.Enter) |
                                                 SourceGrid.GridSpecialKeys.Escape) |
                                                SourceGrid.GridSpecialKeys.Control) | SourceGrid.GridSpecialKeys.Shift)));


            string CheckedColumn      = "CHECKED";
            string ShortNameColumn    = PPartnerTable.GetPartnerShortNameDBName();
            string PartnerKeyColumn   = PPartnerLocationTable.GetPartnerKeyDBName();
            string PartnerClassColumn = PPartnerTable.GetPartnerClassDBName();
            string TelephoneColumn    = PPartnerLocationTable.GetTelephoneNumberDBName();
            string LocationTypeColumn = PPartnerLocationTable.GetLocationTypeDBName();

            DataTable NewTable = FPartnerSharingLocationDV.ToTable(true,
                                                                   new string[] { ShortNameColumn, PartnerKeyColumn, PartnerClassColumn, TelephoneColumn, LocationTypeColumn });

            NewTable.Columns.Add(new DataColumn(CheckedColumn, typeof(bool)));

            clbAddress.Columns.Clear();
            clbAddress.AddCheckBoxColumn("", NewTable.Columns[CheckedColumn], 17, false);
            clbAddress.AddTextColumn(Catalog.GetString("Name"), NewTable.Columns[ShortNameColumn], 240);
            clbAddress.AddPartnerKeyColumn(Catalog.GetString("Partner Key"), NewTable.Columns[PartnerKeyColumn], 90);
            clbAddress.AddTextColumn(Catalog.GetString("Partner Class"), NewTable.Columns[PartnerClassColumn], 90);
            clbAddress.AddTextColumn(Catalog.GetString("Telephone"), NewTable.Columns[TelephoneColumn], 130);
            clbAddress.AddTextColumn(Catalog.GetString("Location Type"), NewTable.Columns[LocationTypeColumn], 90);

            clbAddress.DataBindGrid(NewTable, ShortNameColumn, CheckedColumn, PartnerKeyColumn, false, true, false);

            // initialize list of checked items
            clbAddress.SetCheckedStringList("");

            // this is just to avoid compiler warning from FMainDS being initialized but not used
            if (FMainDS.IsInitialized)
            {
            }
        }