functions/private/Get-XAML.ps1
function Get-XAML { [OutputType([hashtable])] [cmdletbinding()] $xaml = @{ GUI = @" <Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" DataContext="{Binding ViewModel}" Title="Microsoft Azure Small Business Server Solution Accelerator" Height="Auto" Width="Auto" SizeToContent="WidthAndHeight" Background="White" WindowStyle="None"> <Window.Resources> <Style TargetType="{x:Type Button}"> <Setter Property="HorizontalAlignment" Value="Left" /> <Setter Property="VerticalAlignment" Value="Top" /> <Setter Property="Margin" Value="10" /> </Style> <Style TargetType="{x:Type TextBlock}" x:Key="WrapText"> <Setter Property="TextWrapping" Value="Wrap"/> </Style> </Window.Resources> <Grid Height="Auto"> <Grid.ColumnDefinitions> <ColumnDefinition Name="SectionColumn" Width="100" /> <ColumnDefinition Name="ContentColumn" /> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Name="MainTitle" Height="35" /> <RowDefinition Name="MainHeaders" Height="Auto" /> <RowDefinition Name="MainTabs" Height="Auto" /> <RowDefinition Name="MainButtons" Height="Auto" /> <RowDefinition Name="Log" Height="*" /> <RowDefinition Name="Logo" Height="Auto" /> </Grid.RowDefinitions> <Grid Grid.Row="0" Grid.ColumnSpan="2" > <Grid.Background> <SolidColorBrush Color="#FF0088FF" /> </Grid.Background> <TextBlock Name="Lbl_Title" Grid.Column="0" VerticalAlignment="Center" HorizontalAlignment="Center" FontSize="20" Foreground="White">SMB Deployment GUI</TextBlock> <StackPanel Orientation="Horizontal" Grid.Column="1" HorizontalAlignment="Right"> <Button Name="CloseButton" Height="35" Width="35" HorizontalAlignment="Right" VerticalAlignment="Top" FontWeight="Bold" FontSize="14" Margin="0,0"> <Button.Background> <SolidColorBrush Opacity="100" /> </Button.Background> <Button.Foreground> <SolidColorBrush Color="White" /> </Button.Foreground> <Button.BorderBrush> <SolidColorBrush Opacity="100" /> </Button.BorderBrush> X </Button> </StackPanel> </Grid> <Grid Grid.Row="5" Grid.ColumnSpan="2"> <Grid.ColumnDefinitions> <ColumnDefinition Name="HeaderLeft" /> <ColumnDefinition Name="HeaderRight" /> </Grid.ColumnDefinitions> <StackPanel Grid.Column="0" Orientation="Horizontal"> <Image Name="AzureLogo" Source="D:\OneDrive - Inovativ\Projects\Microsoft\SBS\dev\GUI\src\azure.png" Stretch="Fill" HorizontalAlignment="Left" Width="100" Height="30" /> <TextBlock FontSize="20" VerticalAlignment="Center" Margin="10,0,0,0">SMB Blueprint</TextBlock> </StackPanel> <StackPanel Grid.Column="1" VerticalAlignment="Bottom" Orientation="Horizontal" HorizontalAlignment="Right"> <StackPanel Orientation="Horizontal" HorizontalAlignment="Right"> <TextBlock HorizontalAlignment="Center" VerticalAlignment="Center">Powered By</TextBlock> <Image Name="MicrosoftLogo" Source="D:\OneDrive - Inovativ\Projects\Microsoft\SBS\dev\GUI\src\microsoft.png" VerticalAlignment="Stretch" HorizontalAlignment="Center" Height="40" Width="100" Margin="0" /> <Separator Style="{StaticResource {x:Static ToolBar.SeparatorStyleKey}}" Margin="0,5,15,5" /> <Image Name="InovativLogo" Source="D:\OneDrive - Inovativ\Projects\Microsoft\SBS\dev\GUI\src\inovativ.png" Height="40" Width="100" HorizontalAlignment="Center" VerticalAlignment="Stretch" Margin="0" /> </StackPanel> </StackPanel> </Grid> <Grid Grid.Row="2" Grid.Column="0"> <Grid.Resources> </Grid.Resources> <StackPanel VerticalAlignment="Stretch" HorizontalAlignment="Center"> <Button Name="Btn_HomeLink"> <Button.Background> <SolidColorBrush Opacity="100" /> </Button.Background> <Button.Foreground> <SolidColorBrush Color="Blue" /> </Button.Foreground> <Button.BorderBrush> <SolidColorBrush Opacity="100" /> </Button.BorderBrush> Home </Button> <Button Name="Btn_O365Link"> <Button.Background> <SolidColorBrush Opacity="100" /> </Button.Background> <Button.Foreground> <SolidColorBrush Color="Blue" /> </Button.Foreground> <Button.BorderBrush> <SolidColorBrush Opacity="100" /> </Button.BorderBrush> Office 365 </Button> <Button Name="Btn_AzureLink"> <Button.Background> <SolidColorBrush Opacity="100" /> </Button.Background> <Button.Foreground> <SolidColorBrush Color="Blue" /> </Button.Foreground> <Button.BorderBrush> <SolidColorBrush Opacity="100" /> </Button.BorderBrush> Azure </Button> <Button Name="Btn_LogLink"> <Button.Background> <SolidColorBrush Opacity="100" /> </Button.Background> <Button.Foreground> <SolidColorBrush Color="Blue" /> </Button.Foreground> <Button.BorderBrush> <SolidColorBrush Opacity="100" /> </Button.BorderBrush> Log </Button> </StackPanel> </Grid> <TabControl Name="Tab_MainControl" Grid.Row="2" Grid.Column="1" BorderThickness="0"> <TabControl.ItemContainerStyle> <Style x:Name="Style_HideTabs" TargetType="{x:Type TabItem}"> <Setter Property="Visibility" Value="{Binding RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=Window}, Path=DataContext.TabState}"/> </Style> </TabControl.ItemContainerStyle> <TabItem Name="General" Header="General" > <Grid> <!--<GroupBox Name="Grp_O365Connection" Header="Microsoft O365 Connection" Margin="0,50,0,0"> <Grid> <Label Margin="0,5,0,0" VerticalAlignment="Top" HorizontalAlignment="Left">User:</Label> <TextBox Name="Txt_OLogonUser" Margin="100,10,0,0" VerticalAlignment="Top" HorizontalAlignment="Left" Width="150" /> <Label VerticalAlignment="Top" Margin="270,5,0,0" HorizontalAlignment="Left">Password:</Label> <PasswordBox Name="Txt_OLogonPass" Margin="340,10,0,0" VerticalAlignment="Top" HorizontalAlignment="Left" Width="100" /> <Button Name="Btn_ConnectToO365" Margin="470,10,0,0" VerticalAlignment="Top">Connect</Button> <Label Margin="0,40,0,0" VerticalAlignment="Top" HorizontalAlignment="Left">Tenant Domain:</Label> <TextBox Name="Txt_ODomain" Margin="100,45,0,0" VerticalAlignment="Top" HorizontalAlignment="Left" Width="150" /> <Label Margin="250,40,0,0" VerticalAlignment="Top" HorizontalAlignment="Left">.onmicrosoft.com</Label> </Grid> </GroupBox> --> <GroupBox Name="Grp_AConnection" Header="Microsoft Azure Connection" Height="100" VerticalAlignment="Top"> <StackPanel> <StackPanel Orientation="Horizontal"> <Label VerticalAlignment="Center" HorizontalAlignment="Left">User:</Label> <TextBox Name="Txt_LogonUser" VerticalAlignment="Center" HorizontalAlignment="Left" Width="300" /> <Label HorizontalAlignment="Left" VerticalAlignment="Center">Password:</Label> <PasswordBox Name="Txt_LogonPass" VerticalAlignment="Center" HorizontalAlignment="Left" Width="150" /> <Button Name="Btn_ConnectToAzure" VerticalAlignment="Center" IsDefault="True">Connect</Button> </StackPanel> <StackPanel Orientation="Horizontal"> <Label VerticalAlignment="Center" HorizontalAlignment="Left">Tenant:</Label> <ComboBox Name="Cmb_Tenants" VerticalAlignment="Center" HorizontalAlignment="Left" Width="300" /> </StackPanel> </StackPanel> </GroupBox> </Grid> </TabItem> <TabItem Name="Tab_O365" Header="O365"> <StackPanel> <Button Margin="0,0,0,0" HorizontalAlignment="Center" Name="btnImportCSV" Height="20" Width="100" VerticalAlignment="Center" Background="#FF8B97A2" Foreground="White" FontWeight="ExtraBold">Import CSV...</Button> <!--<GroupBox Margin="0,10,711.2,553.4" Name="Grp_TenantInf" Header="Tenant Information"> <Grid Margin="0,0,0,0"> <Label VerticalAlignment="Top" Margin="0,0,0,0" HorizontalAlignment="Left">Tenant Name:</Label> <TextBox Name="Txt_TenantName" Margin="100,5,0,0" VerticalAlignment="Top" HorizontalAlignment="Left" Width="250" /> <Label VerticalAlignment="Top" Margin="0,35,0,0" HorizontalAlignment="Left">Address:</Label> <TextBox Name="txt_TenantAddress" Margin="100,40,0,0" VerticalAlignment="Top" HorizontalAlignment="Left" Width="250" /> <Label VerticalAlignment="Top" Margin="0,70,0,0" HorizontalAlignment="Left">Number:</Label> <TextBox Name="txt_AddNumber" Margin="100,75,0,0" VerticalAlignment="Top" HorizontalAlignment="Left" Width="50" /> <Label VerticalAlignment="Top" Margin="0,105,0,0" HorizontalAlignment="Left">ZIP:</Label> <TextBox Name="txt_TenantZIP" Margin="100,110,0,0" VerticalAlignment="Top" HorizontalAlignment="Left" Width="50" /> <Label VerticalAlignment="Top" Margin="0,140,0,0" HorizontalAlignment="Left">State:</Label> <TextBox Name="txt_TenantState" Margin="100,145,0,0" VerticalAlignment="Top" HorizontalAlignment="Left" Width="250" /> <Label VerticalAlignment="Top" Margin="160,105,0,0" HorizontalAlignment="Left">City:</Label> <TextBox Name="txt_City" Margin="200,110,0,0" VerticalAlignment="Top" HorizontalAlignment="Left" Width="150" /> <Label VerticalAlignment="Top" Margin="0,170,0,0" HorizontalAlignment="Left">Country:</Label> <TextBox Name="txt_TenantCountry" Margin="100,175,0,0" VerticalAlignment="Top" HorizontalAlignment="Left" Width="250" /> <Label VerticalAlignment="Top" Margin="0,205,0,0" HorizontalAlignment="Left">Office Phone:</Label> <TextBox Name="txt_TenantPh" Margin="100,210,0,0" VerticalAlignment="Top" HorizontalAlignment="Left" Width="250" /> <Label VerticalAlignment="Top" Margin="0,240,0,0" HorizontalAlignment="Left">Fax Number:</Label> <TextBox Name="txt_TenantFax" Margin="100,245,0,0" VerticalAlignment="Top" HorizontalAlignment="Left" Width="250" /> </Grid> </GroupBox> --> <GroupBox Name="Grp_GroupInfo" Header="Groups"> <StackPanel> <StackPanel Orientation="Horizontal"> <StackPanel Orientation="Vertical" Width="240" VerticalAlignment="Center"> <TextBlock TextWrapping="Wrap">Please use the user input section to manage O365 groups</TextBlock> </StackPanel> <StackPanel Orientation="Vertical" Margin="0,0,0,0"> <DataGrid Name="GroupGrid" ItemsSource="{Binding Path=DataContext.Groups,RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type Window}}}" IsReadOnly="False" AutoGenerateColumns="False" CanUserAddRows="False" CanUserDeleteRows="False" VerticalAlignment="Top" HorizontalAlignment="Stretch" Height="150" Width="800" > <DataGrid.Resources> <DataTemplate x:Key="GetOwner"> <TextBlock Text="{Binding Path=Owner,NotifyOnSourceUpdated=True}" /> </DataTemplate> <DataTemplate x:Key="SetOwner"> <ComboBox Name="Cmb_Owners" ItemsSource="{Binding Path=DataContext.Users,RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type Window}}}" SelectedItem="{Binding Path=Owner}" /> </DataTemplate> </DataGrid.Resources> <DataGrid.Columns> <DataGridTextColumn IsReadOnly="True" Header="Group Name" Width="150" Binding="{Binding Path=Name}" /> <!--<DataGridTextColumn IsReadOnly="True" Header="Group Description" Width="350" Binding="{Binding Path=Description}" />--> <DataGridTextColumn IsReadOnly="True" Header="Owner" Width="150" Binding="{Binding Path=Owner}"> </DataGridTextColumn> </DataGrid.Columns> </DataGrid> </StackPanel> </StackPanel> </StackPanel> </GroupBox> <GroupBox Name="Grp_UserInfo" Height="Auto" Width="Auto" HorizontalAlignment="Left" VerticalAlignment="Top" Header="Users"> <StackPanel Orientation="Horizontal"> <Grid Name="Grd_UserInput"> <Grid.ColumnDefinitions> <ColumnDefinition Width="80" /> <ColumnDefinition Width="200" /> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="30" /> <RowDefinition Height="30" /> <RowDefinition Height="30" /> <RowDefinition Height="30" /> <RowDefinition Height="30" /> <RowDefinition Height="30" /> <RowDefinition Height="30" /> <RowDefinition Height="30" /> <RowDefinition Height="80" /> <RowDefinition Height="40" /> </Grid.RowDefinitions> <Label Grid.Column="0" Grid.Row="0" VerticalAlignment="Center">First Name</Label> <Label Grid.Column="0" Grid.Row="1" VerticalAlignment="Center" HorizontalAlignment="Left">Last Name</Label> <Label Grid.Column="0" Grid.Row="2" VerticalAlignment="Center" HorizontalAlignment="Left" >Function</Label> <Label Grid.Column="0" Grid.Row="3" VerticalAlignment="Center" >Department</Label> <Label Grid.Column="0" Grid.Row="4" VerticalAlignment="Center" HorizontalAlignment="Left" >Office</Label> <Label Grid.Column="0" Grid.Row="5" VerticalAlignment="Center" >Mobile</Label> <Label Grid.Column="0" Grid.Row="6" VerticalAlignment="Center" >Country</Label> <Label Grid.Column="0" Grid.Row="7" VerticalAlignment="Center" >Group</Label> <Label Grid.Column="0" Grid.Row="8" VerticalAlignment="Center" >Licenses</Label> <TextBox Grid.Column="1" Grid.Row="0" Name="Txt_FirstName" VerticalAlignment="Center" HorizontalAlignment="Left" Width="150"></TextBox> <TextBox Grid.Column="1" Grid.Row="1" VerticalAlignment="Center" HorizontalAlignment="Left" Name="Txt_LastName" Width="150"></TextBox> <TextBox Grid.Column="1" Grid.Row="2" VerticalAlignment="Center" HorizontalAlignment="Left" Name="Txt_Function" Width="150"></TextBox> <TextBox Grid.Column="1" Grid.Row="3" VerticalAlignment="Center" HorizontalAlignment="Left" Name="Txt_Department" Width="150"></TextBox> <TextBox Grid.Column="1" Grid.Row="4" VerticalAlignment="Center" HorizontalAlignment="Left" Name="Txt_Office" Width="150"></TextBox> <TextBox Grid.Column="1" Grid.Row="5" VerticalAlignment="Center" HorizontalAlignment="Left" Name="Txt_Mobile" Width="150"></TextBox> <ComboBox Grid.Column="1" Grid.Row="6" VerticalAlignment="Center" HorizontalAlignment="Left" Name="Cmb_Country" Width="150"> <ComboBoxItem Tag="BE" IsSelected="True">Belgium</ComboBoxItem> <ComboBoxItem Tag="NL" IsSelected="False">Netherlands</ComboBoxItem> <ComboBoxItem Tag="LU" IsSelected="False">Luxembourg</ComboBoxItem> </ComboBox> <ComboBox ItemsSource="{Binding Path=DataContext.Groups,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=Window}}" IsEditable="True" TextSearch.TextPath="Name" Grid.Column="1" Grid.Row="7" VerticalAlignment="Center" HorizontalAlignment="Left" Name="Cmb_Groups" Width="150"> </ComboBox> <ListBox Grid.Column="1" Grid.Row="8" VerticalAlignment="Stretch" Width="Auto" Height="Auto" SelectionMode="Multiple" HorizontalAlignment="Stretch" Name="Lst_Licenses" Margin="5,5,-5,35" Grid.RowSpan="2"> <ListBox.ItemTemplate> <DataTemplate> <CheckBox Name="CheckBoxZone" IsChecked="{Binding RelativeSource={RelativeSource AncestorType={x:Type ListBoxItem}}, Path=IsSelected}" Content="{Binding Path=.}" Tag="{Binding Path=.}" Margin="0,5,0,0"/> </DataTemplate> </ListBox.ItemTemplate> </ListBox> <Button Grid.ColumnSpan="2" Grid.Column="0" Grid.Row="9" VerticalAlignment="Top" HorizontalAlignment="Center" Name="Btn_AddUser" Height="20" Width="50" Background="#FF8B97A2" Foreground="White">Add</Button> </Grid> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition /> <ColumnDefinition /> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="Auto" /> <!-- <RowDefinition Height="Auto" /> --> </Grid.RowDefinitions> <DataGrid Grid.Column="0" Grid.Row="0" Name="UserGrid" ItemsSource="{Binding Path=Users,UpdateSourceTrigger=PropertyChanged,Mode=OneWay}" IsReadOnly="True" AutoGenerateColumns="False" CanUserAddRows="False" CanUserDeleteRows="False" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Width="800" Height="360"> <DataGrid.Columns> <DataGridTextColumn Header="First Name" Width="80" Binding="{Binding Path=First}" /> <DataGridTextColumn Header="Last Name" Width="100" Binding="{Binding Path=Last}" /> <!-- <DataGridTextColumn Header="DisplayName" Width="150" Binding="{Binding Path=First}" /> --> <DataGridTextColumn Header="Title" Width="100" Binding="{Binding Path=Title}" /> <DataGridTextColumn Header="Department" Width="100" Binding="{Binding Path=Department}" /> <DataGridTextColumn Header="Office" Width="100" Binding="{Binding Path=Office}" /> <DataGridTextColumn Header="Mobile" Width="100" Binding="{Binding Path=Mobile}" /> <DataGridTextColumn Header="Country" Width="60" Binding="{Binding Path=Country}" /> <DataGridTextColumn Header="License" Width="100" Binding="{Binding Path=Licenses}" /> <DataGridTextColumn Header="Group" Width="100" Binding="{Binding Path=Groups[0]}" /> <!-- <DataGridComboBoxColumn Header="License" ItemsSource="{Binding Path=Licenses}" DisplayMemberPath="Name" /> --> </DataGrid.Columns> </DataGrid> <StackPanel Orientation="Horizontal" Grid.Row="1" Grid.ColumnSpan="2" HorizontalAlignment="Right"> <Button Name="btn_DeleteUsers" Margin="0,0,0,0" VerticalAlignment="Top" HorizontalAlignment="Right" Height="20" Width="50" Background="#FF8B97A2" Foreground="White">Delete</Button> <Button Name="btn_ClearUsers" Margin="0,0,0,0" VerticalAlignment="Top" HorizontalAlignment="Right" Height="20" Width="50" Background="#FF8B97A2" Foreground="White">Clear</Button> </StackPanel> </Grid> </StackPanel> </GroupBox> <GroupBox Header="Execute"> <StackPanel Orientation="Horizontal" HorizontalAlignment="Stretch"> <TextBlock VerticalAlignment="Center" Margin="0,0,10,0">Initial User Password:</TextBlock> <PasswordBox VerticalAlignment="Center" Width="150" Margin="0,0,0,0" Name="Txt_OfficePassword"></PasswordBox> <TextBox VerticalAlignment="Center" Width="150" Margin="0,0,0,0" Name="Txt_OfficePasswordVisible" IsReadOnly="True" Visibility="Collapsed"></TextBox> <Button Name="Btn_ShowOfficePassword" VerticalAlignment="Center" Margin="0">Show</Button> <TextBlock VerticalAlignment="Center" Margin="20,0,0,0">Mail Suffix:</TextBlock> <TextBox IsReadOnly="True" Name="Txt_Mail" Width="200" VerticalAlignment="Center" /> <Button Name="Btn_OfficeDeploy" HorizontalAlignment="Right" Foreground="White" FontWeight="Bold" Background="#FF24BE43">Provision Office 365</Button> </StackPanel> </GroupBox> </StackPanel> </TabItem> <TabItem Name="Tab_Azure" Header="Azure"> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="71*"/> <ColumnDefinition Width="1016*"/> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Name="RoleTitle" /> <RowDefinition Name="RoleContent" /> </Grid.RowDefinitions> <StackPanel Grid.ColumnSpan="2" Grid.RowSpan="2"> <GroupBox Name="grpzureConnection" Header="1. Azure Connection" > <StackPanel Orientation="Horizontal"> <Label VerticalAlignment="Top" HorizontalAlignment="Left">Subscription:</Label> <ComboBox Name="Cmb_Subscriptions" VerticalAlignment="Center" HorizontalAlignment="Left" Width="250"></ComboBox> </StackPanel> </GroupBox> <GroupBox Header="2. Scenario Selection" > <Grid> <StackPanel VerticalAlignment="Center" HorizontalAlignment="Stretch"> <RadioButton Name="Rad_Small" Tag="small" FontSize="20" IsChecked="True" VerticalAlignment="Center" VerticalContentAlignment="Center">Small</RadioButton> <RadioButton Name="Rad_Medium" Tag="medium" FontSize="20" VerticalAlignment="Center" VerticalContentAlignment="Center">Medium</RadioButton> <RadioButton Name="Rad_Large" Tag="large" FontSize="20" VerticalAlignment="Center" VerticalContentAlignment="Center" >Large</RadioButton> </StackPanel> <!--<Button Name="btn_Small" Margin="0,20,0,0" VerticalAlignment="Top" HorizontalAlignment="Left" Height="30" Width="100" Background="#FF0088FF" Foreground="White">Small</Button> <Button Name="btn_Medium" Margin="0,60,0,0" VerticalAlignment="Top" HorizontalAlignment="Left" Height="30" Width="100" Background="#FF277CC9" Foreground="White">Medium</Button> <Button Name="btn_Large" Margin="0,100,0,0" VerticalAlignment="Top" HorizontalAlignment="Left" Height="30" Width="100" Background="#FF3E59C5" Foreground="White">Large</Button> <CheckBox Name="Chk_AzureSmall" Margin="150,30,0,0" Content="Deploy VNet, subnet, Server and enable AD, file and RDS services"></CheckBox> <CheckBox Name="Chk_AzureMedium" Margin="150,70,0,0" Content="Deploy VNet, subnets, Server and enable AD, file and RDS services"></CheckBox> <CheckBox Name="Chk_AzureLarge" Margin="150,110,0,0" Content="Deploy VNet, subnets, Server and enable AD, file and RDS (dedicated) services"></CheckBox> --> </Grid> </GroupBox> <GroupBox Header="3. Additional Options"> <Grid HorizontalAlignment="Left"> <Grid.ColumnDefinitions> <ColumnDefinition Width="200" /> <ColumnDefinition Width="200"/> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition /> <RowDefinition /> <RowDefinition /> <RowDefinition /> <RowDefinition /> <RowDefinition /> <RowDefinition /> </Grid.RowDefinitions> <Label Grid.Column="0" Grid.Row="0" Grid.ColumnSpan="2">Storage Type:</Label> <ComboBox Grid.Column="2" Grid.Row="0" Name="Cmb_StorageType" Width="200"> <ComboBoxItem IsSelected="True" Tag="Standard_LRS">Locally Redundant (standard)</ComboBoxItem> <ComboBoxItem Tag="Standard_ZRS">Zone-Redundant (standard)</ComboBoxItem> <ComboBoxItem Tag="Standard_GRS">Geo-Redundant (standard)</ComboBoxItem> <ComboBoxItem Tag="Standard_RAGRS">Read-Access Geo-Redundant (standard)</ComboBoxItem> <ComboBoxItem Tag="Premium_LRS">Locally Redundant (premium)</ComboBoxItem> </ComboBox> <Label Grid.Column="0" Grid.Row="1" Grid.ColumnSpan="2">OS:</Label> <ComboBox Grid.Column="2" Grid.Row="1" Name="Cmb_OS"> <ComboBoxItem Tag="2016" IsSelected="True">2016</ComboBoxItem> <ComboBoxItem Tag="2012R2">2012R2</ComboBoxItem> </ComboBox> <Label Grid.Column="0" Grid.Row="2" Grid.ColumnSpan="2">Provision additional VM:</Label> <ComboBox Grid.Column="2" Grid.Row="2" Name="Cmb_ExtraVMSize"> <ComboBoxItem Tag="none" IsSelected="True">No</ComboBoxItem> <ComboBoxItem Tag="small">Small</ComboBoxItem> <ComboBoxItem Tag="medium">Medium</ComboBoxItem> </ComboBox> <Label Grid.Column="0" Grid.Row="3" Grid.ColumnSpan="3">Provision SQL SaaS:</Label> <ComboBox Grid.Column="2" Grid.Row="3" Name="Cmb_ExtraSQLSize"> <ComboBoxItem Tag="none" IsSelected="True">No</ComboBoxItem> <ComboBoxItem Tag="small">Yes</ComboBoxItem> </ComboBox> <Label Grid.Column="0" Grid.Row="4" Grid.ColumnSpan="2">Provision Azure Backup Service:</Label> <ComboBox Grid.Column="2" Grid.Row="4" Name="Cmb_Backup"> <ComboBoxItem Tag="none" IsSelected="True">No</ComboBoxItem> <ComboBoxItem Tag="standard">Yes</ComboBoxItem> </ComboBox> <Label Grid.Column="0" Grid.Row="5" Grid.ColumnSpan="2">Provision VPN:</Label> <ComboBox Grid.Column="2" Grid.Row="5" Name="Cmb_VPN"> <ComboBoxItem Tag="none" IsSelected="True">No</ComboBoxItem> <ComboBoxItem Tag="basic">Yes</ComboBoxItem> </ComboBox> <!-- <CheckBox Name="Chk_AzureSQL" Margin="150,10,0,0" Content="Deploy Azure SQL database"></CheckBox> <CheckBox Name="Chk_AzureVM" Margin="150,50,0,0" Content="Deploy Extra VM"></CheckBox> --> </Grid> </GroupBox> <GroupBox Grid.Row="1" Header="4. Location"> <StackPanel HorizontalAlignment="Stretch"> <Label VerticalAlignment="Center" HorizontalAlignment="Center">Primary Location</Label> <ComboBox Name="Cmb_PrimaryLocation" Width="250" VerticalAlignment="Center" HorizontalAlignment="Center" /> <Label VerticalAlignment="Center" HorizontalAlignment="Center">Automation Location</Label> <ComboBox Name="Cmb_AutomationLocation" Width="250" VerticalAlignment="Center" HorizontalAlignment="Center" /> <Label VerticalAlignment="Center" HorizontalAlignment="Center">Log Analytics Location</Label> <ComboBox Name="Cmb_LogAnalyticsLocation" Width="250" VerticalAlignment="Center" HorizontalAlignment="Center" /> </StackPanel> </GroupBox> <GroupBox Grid.Row="1" Header="5. Execute" > <StackPanel Orientation="Horizontal" VerticalAlignment="Center" HorizontalAlignment="Center"> <Label VerticalAlignment="Center">Admin Password:</Label> <PasswordBox VerticalAlignment="Center" Width="150" Name="Txt_AzurePassword" /> <TextBox VerticalAlignment="Center" Width="150" Name="Txt_AzurePasswordVisible" Visibility="Collapsed" IsReadOnly="True"></TextBox> <Button Name="Btn_ShowAzurePassword" Margin="0" VerticalAlignment="Center">Show</Button> <Label VerticalAlignment="Center" Margin="20,0,0,0">Customer Name:</Label> <TextBox VerticalAlignment="Center" Name="Txt_Customer" Width="100" MaxLength="15" /> <Button Name="btn_Deploy" Foreground="White" VerticalAlignment="Center" HorizontalAlignment="Center" FontWeight="Bold" Background="#FF24BE43">Provision Azure</Button> </StackPanel> </GroupBox> </StackPanel> </Grid> </TabItem> <TabItem Name="Tab_Log" Header="Log" VerticalAlignment="Stretch" HorizontalAlignment="Stretch"> <Grid VerticalAlignment="Stretch" HorizontalAlignment="Stretch"> <StackPanel> <GroupBox Grid.ColumnSpan="3" Header="Deployment" VerticalAlignment="Stretch" HorizontalAlignment="Stretch"> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="150" /> <ColumnDefinition Width="500" /> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition /> <RowDefinition /> <RowDefinition /> <RowDefinition /> <RowDefinition /> </Grid.RowDefinitions> <Label Grid.Column="0" Grid.Row="0">Deployment Type</Label> <TextBox Grid.Column="1" Grid.Row="0" IsReadOnly="True" VerticalAlignment="Center" HorizontalAlignment="Center" Name="Txt_DeploymentType" Width="500"></TextBox> <Label Grid.Column="0" Grid.Row="1">Deployment Duration</Label> <TextBox Grid.Column="1" Grid.Row="1" VerticalAlignment="Center" IsReadOnly="True" HorizontalAlignment="Center" Name="Txt_DeploymentTime" Width="500"></TextBox> <Label Grid.Column="0" Grid.Row="3" VerticalAlignment="Top">Deployment Status</Label> <TextBox Grid.Column="1" Grid.Row="3" TextAlignment="Center" VerticalAlignment="Center" IsReadOnly="True" HorizontalAlignment="Center" Name="Txt_DeploymentStatus" Width="500" Height="100"></TextBox> <StackPanel Grid.ColumnSpan="2" Orientation="Horizontal" Grid.Column="0" Grid.Row="4"> <Button Name="Btn_CopyCredential">Copy Credentials</Button> <Button Name="Btn_CopyCommand">Copy PowerShell Command</Button> </StackPanel> </Grid> </GroupBox> <GroupBox Grid.ColumnSpan="3" Header="Log" VerticalAlignment="Stretch" HorizontalAlignment="Stretch"> <StackPanel> <DataGrid Name="Dgr_Log" AutoGenerateColumns="False" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Height="300" IsReadOnly="True"> <DataGrid.Columns> <DataGridTextColumn Header="Severity" Binding="{Binding Path=Severity}" /> <DataGridTextColumn Header="Component" Binding="{Binding Path=Component}" /> <DataGridTextColumn Header="Message" Binding="{Binding Path=Message}" MaxWidth="500" ElementStyle="{StaticResource WrapText}" /> <DataGridTextColumn Header="Timestamp" Binding="{Binding Path=Timestamp}" /> </DataGrid.Columns> </DataGrid> <Grid HorizontalAlignment="Stretch"> <Grid.ColumnDefinitions> <ColumnDefinition /> <ColumnDefinition /> </Grid.ColumnDefinitions> <CheckBox Grid.Column="0" Margin="0,0,5,0" Name="Chk_AutoScroll" IsChecked="True">Auto-Scroll</CheckBox> <StackPanel Grid.Column="1" Orientation="Horizontal" HorizontalAlignment="Right"> <TextBlock Visibility="Collapsed" VerticalAlignment="Center" HorizontalAlignment="Right" Margin="0,0,5,0" Name="Txb_LogName">LogName</TextBlock> <Button Background="Transparent" Margin="0,0,0,0" BorderBrush="Transparent" VerticalAlignment="Center" Name="Btn_OpenLog">Open Log Location</Button> </StackPanel> </Grid> </StackPanel> </GroupBox> </StackPanel> </Grid> </TabItem> </TabControl> </Grid> </Window> "@ } return $xaml.GUI.Replace("D:\OneDrive - Inovativ\Projects\Microsoft\SBS\dev\GUI\src\","$global:root\gui\") } |