Example #1
0
        private void SwitchSelectedServer(int listViewItemIndex)
        {
            //Sync any updated data with the ListView item tag
            if (this.splitContainer1.Panel2.Controls.Count > 0)
            {
                SyncFormMultiDbPageData();
                this.splitContainer1.Panel2.Controls[0].Dispose();
                this.splitContainer1.Panel2.Controls.Clear();
            }

            for (int i = 0; i < lstServers.Items.Count; i++)
            {
                if (i == listViewItemIndex)
                {
                    lstServers.Items[i].BackColor = Color.LightSteelBlue;
                }
                else
                {
                    lstServers.Items[i].BackColor = SystemColors.Window;
                }
            }

            //Change the MultiDbPage Control
            ServerData  dat  = (ServerData)lstServers.Items[listViewItemIndex].Tag;
            MultiDbPage page = new MultiDbPage(dat, this.defaultDatabases);

            page.ServerRemoved += new ServerChangedEventHandler(pg_ServerRemoved);
            page.DataBind();
            page.ValueChanged += new EventHandler(pg_ValueChanged);
            page.Dock          = DockStyle.Fill;
            this.splitContainer1.Panel2.Controls.Add(page);
        }
Example #2
0
 private void SyncFormMultiDbPageData()
 {
     if (this.splitContainer1.Panel2.Controls[0] is MultiDbPage)
     {
         MultiDbPage current = (MultiDbPage)this.splitContainer1.Panel2.Controls[0];
         foreach (ListViewItem item in lstServers.Items)
         {
             if (item.Text == current.ServerName)
             {
                 item.Tag = current.ServerData;
                 break;
             }
         }
     }
 }