private async void rbVNetInMigration_CheckedChanged(object sender, EventArgs e)
        {
            TreeNode asmTreeNode = (TreeNode)_VirtualMachineNode.Tag;

            Azure.Asm.VirtualMachine asmVirtualMachine = (Azure.Asm.VirtualMachine)asmTreeNode.Tag;
            RadioButton rb = (RadioButton)sender;

            if (rb.Checked)
            {
                cmbExistingArmVNets.Items.Clear();
                cmbExistingArmSubnet.Items.Clear();

                TreeNode targetResourceGroupNode = _AsmToArmForm.SeekARMChildTreeNode(_AsmToArmForm.TargetResourceGroup.Name, _AsmToArmForm.TargetResourceGroup.GetFinalTargetName(), _AsmToArmForm.TargetResourceGroup, false);
                TreeNode virtualNetworksNode     = _AsmToArmForm.SeekARMChildTreeNode(targetResourceGroupNode.Nodes, "Virtual Networks", "Virtual Networks", "Virtual Networks", false);

                if (virtualNetworksNode != null)
                {
                    foreach (TreeNode asmVirtualNetworkNode in virtualNetworksNode.Nodes)
                    {
                        TreeNode asmVirtualNetworkAsmParentNode = (TreeNode)asmVirtualNetworkNode.Tag;

                        if (((Azure.Asm.VirtualNetwork)asmVirtualNetworkAsmParentNode.Tag).HasNonGatewaySubnet)
                        {
                            cmbExistingArmVNets.Items.Add(asmVirtualNetworkAsmParentNode.Tag);
                        }
                    }
                }

                if (asmVirtualMachine.TargetVirtualNetwork != null)
                {
                    // Attempt to match target to list items
                    foreach (Azure.Asm.VirtualNetwork listVirtualNetwork in cmbExistingArmVNets.Items)
                    {
                        if (listVirtualNetwork.Id == asmVirtualMachine.TargetVirtualNetwork.Id)
                        {
                            cmbExistingArmVNets.SelectedItem = listVirtualNetwork;
                        }
                    }

                    if (cmbExistingArmVNets.SelectedItem != null && asmVirtualMachine.TargetSubnet != null)
                    {
                        foreach (Azure.Asm.Subnet listSubnet in cmbExistingArmSubnet.Items)
                        {
                            if (listSubnet.Id == asmVirtualMachine.TargetSubnet.Id)
                            {
                                cmbExistingArmSubnet.SelectedItem = listSubnet;
                            }
                        }
                    }
                }
            }

            await PropertyChanged();
        }
示例#2
0
        private void rbStorageAccountInMigration_CheckedChanged(object sender, EventArgs e)
        {
            RadioButton rbSender = (RadioButton)sender;

            if (rbSender.Checked)
            {
                cmbTargetStorage.Items.Clear();
                cmbTargetStorage.Enabled = true;

                TreeNode targetResourceGroupNode = _AsmToArmForm.SeekARMChildTreeNode(_AsmToArmForm.TargetResourceGroup.Name, _AsmToArmForm.TargetResourceGroup.GetFinalTargetName(), _AsmToArmForm.TargetResourceGroup, false);
                TreeNode storageAccountsNode     = _AsmToArmForm.SeekARMChildTreeNode(targetResourceGroupNode.Nodes, "Storage Accounts", "Storage Accounts", "Storage Accounts", false);

                if (storageAccountsNode != null)
                {
                    foreach (TreeNode armStorageAccountNode in storageAccountsNode.Nodes)
                    {
                        TreeNode asmStorageAccountNode = (TreeNode)armStorageAccountNode.Tag;
                        cmbTargetStorage.Items.Add(asmStorageAccountNode.Tag);
                    }
                }

                if ((_AsmDataDisk.TargetStorageAccount == null) || (_AsmDataDisk.TargetStorageAccount.GetType() == typeof(Azure.Arm.StorageAccount)))
                {
                }
                else
                {
                    for (int i = 0; i < cmbTargetStorage.Items.Count; i++)
                    {
                        Azure.Asm.StorageAccount cmbStorageAccount = (Azure.Asm.StorageAccount)cmbTargetStorage.Items[i];
                        if (cmbStorageAccount.Id == _AsmDataDisk.TargetStorageAccount.Id)
                        {
                            cmbTargetStorage.SelectedIndex = i;
                            break;
                        }
                    }

                    // Using a for loop above, because this was always selecting Index 0, even when matched on a higher ( > 0) indexed item
                    //foreach (Azure.Asm.StorageAccount asmStorageAccount in cmbTargetStorage.Items)
                    //{
                    //    if (asmStorageAccount.Id == _AsmDataDisk.TargetStorageAccount.Id)
                    //    {
                    //        cmbTargetStorage.SelectedItem = asmStorageAccount;
                    //        break;
                    //    }
                    //}

                    if (cmbTargetStorage.SelectedItem == null)
                    {
                        _LogProvider.WriteLog("rbStorageAccountInMigration_CheckedChanged", "Unable to location previously selected ASM Storage Account '" + _AsmDataDisk.TargetStorageAccount.Id + "' as an object included for ASM to ARM migration.  Please select a target storage account for the Azure Disk.");
                    }
                }
            }
        }
示例#3
0
        private void rbStorageAccountInMigration_CheckedChanged(object sender, EventArgs e)
        {
            RadioButton rbSender = (RadioButton)sender;

            if (rbSender.Checked)
            {
                cmbTargetStorage.Items.Clear();
                cmbTargetStorage.Enabled = true;

                TreeNode targetResourceGroupNode = _AsmToArmForm.SeekARMChildTreeNode(_AsmToArmForm.TargetResourceGroup.Name, _AsmToArmForm.TargetResourceGroup.GetFinalTargetName(), _AsmToArmForm.TargetResourceGroup, false);
                TreeNode storageAccountsNode     = _AsmToArmForm.SeekARMChildTreeNode(targetResourceGroupNode.Nodes, "Storage Accounts", "Storage Accounts", "Storage Accounts", false);

                if (storageAccountsNode != null)
                {
                    foreach (TreeNode armStorageAccountNode in storageAccountsNode.Nodes)
                    {
                        TreeNode asmStorageAccountNode = (TreeNode)armStorageAccountNode.Tag;
                        cmbTargetStorage.Items.Add(asmStorageAccountNode.Tag);
                    }
                }

                if ((_AsmDataDisk.TargetStorageAccount == null) || (_AsmDataDisk.TargetStorageAccount.GetType() == typeof(Azure.Arm.StorageAccount)))
                {
                }
                else
                {
                    foreach (Azure.Asm.StorageAccount asmStorageAccount in cmbTargetStorage.Items)
                    {
                        if (asmStorageAccount.Id == _AsmDataDisk.TargetStorageAccount.Id)
                        {
                            cmbTargetStorage.SelectedItem = asmStorageAccount;
                            break;
                        }
                    }

                    if (cmbTargetStorage.SelectedItem == null)
                    {
                        _LogProvider.WriteLog("rbStorageAccountInMigration_CheckedChanged", "Unable to location previously selected ASM Storage Account '" + _AsmDataDisk.TargetStorageAccount.Id + "' as an object included for ASM to ARM migration.  Please select a target storage account for the Azure Disk.");
                    }
                }
            }

            PropertyChanged();
        }