|
26 | 26 | <RowDefinition Height="Auto"/> |
27 | 27 | <RowDefinition Height="*"/> |
28 | 28 | <RowDefinition Height="Auto"/> |
| 29 | + <RowDefinition Height="Auto"/> |
29 | 30 | </Grid.RowDefinitions> |
30 | 31 |
|
31 | 32 | <!-- Header --> |
|
50 | 51 | <!-- Authentication Type --> |
51 | 52 | <TextBlock Text="Authentication:" FontWeight="Bold" Margin="0,0,0,5" |
52 | 53 | Foreground="{DynamicResource ForegroundBrush}"/> |
53 | | - <StackPanel Orientation="Horizontal" Margin="0,0,0,15"> |
| 54 | + <StackPanel Margin="0,0,0,15"> |
54 | 55 | <RadioButton x:Name="WindowsAuthRadio" Content="Windows Authentication" |
55 | 56 | GroupName="Auth" IsChecked="True" |
56 | 57 | Foreground="{DynamicResource ForegroundBrush}" |
57 | | - Checked="AuthType_Changed" Margin="0,0,20,0"/> |
| 58 | + Checked="AuthType_Changed" Margin="0,0,0,4"/> |
58 | 59 | <RadioButton x:Name="SqlAuthRadio" Content="SQL Server Authentication" |
59 | 60 | GroupName="Auth" |
60 | 61 | Foreground="{DynamicResource ForegroundBrush}" |
61 | | - Checked="AuthType_Changed"/> |
| 62 | + Checked="AuthType_Changed" Margin="0,0,0,4"/> |
| 63 | + <RadioButton x:Name="EntraMfaAuthRadio" Content="Microsoft Entra MFA" |
| 64 | + GroupName="Auth" |
| 65 | + Foreground="{DynamicResource ForegroundBrush}" |
| 66 | + Checked="AuthType_Changed" |
| 67 | + ToolTip="Interactive authentication with MFA for Azure SQL Database."/> |
62 | 68 | </StackPanel> |
63 | 69 |
|
64 | | - <!-- SQL Authentication Fields (initially disabled) --> |
65 | | - <Border x:Name="SqlAuthPanel" IsEnabled="False"> |
66 | | - <StackPanel> |
67 | | - <TextBlock Text="Username:" FontWeight="Bold" Margin="0,0,0,5" |
68 | | - Foreground="{DynamicResource ForegroundBrush}"/> |
69 | | - <TextBox x:Name="UsernameTextBox" Height="25" Margin="0,0,0,15"/> |
| 70 | + <!-- SQL Authentication Fields --> |
| 71 | + <StackPanel x:Name="SqlAuthPanel" Visibility="Collapsed" Margin="0,0,0,15"> |
| 72 | + <TextBlock Text="Username:" FontWeight="Bold" Margin="0,0,0,5" |
| 73 | + Foreground="{DynamicResource ForegroundBrush}"/> |
| 74 | + <TextBox x:Name="UsernameTextBox" Height="25" Margin="0,0,0,15"/> |
70 | 75 |
|
71 | | - <TextBlock Text="Password:" FontWeight="Bold" Margin="0,0,0,5" |
72 | | - Foreground="{DynamicResource ForegroundBrush}"/> |
73 | | - <PasswordBox x:Name="PasswordBox" Height="25" Margin="0,0,0,15"/> |
74 | | - </StackPanel> |
75 | | - </Border> |
| 76 | + <TextBlock Text="Password:" FontWeight="Bold" Margin="0,0,0,5" |
| 77 | + Foreground="{DynamicResource ForegroundBrush}"/> |
| 78 | + <PasswordBox x:Name="PasswordBox" Height="25" Margin="0,0,0,0"/> |
| 79 | + </StackPanel> |
| 80 | + |
| 81 | + <!-- Microsoft Entra MFA Fields --> |
| 82 | + <StackPanel x:Name="EntraMfaPanel" Visibility="Collapsed" Margin="0,0,0,15"> |
| 83 | + <TextBlock Text="Username (optional):" FontWeight="Bold" Margin="0,0,0,5" |
| 84 | + Foreground="{DynamicResource ForegroundBrush}"/> |
| 85 | + <TextBox x:Name="EntraMfaUsernameBox" Height="25" Margin="0,0,0,0" |
| 86 | + ToolTip="Optional: Pre-populate the authentication dialog with this email address"/> |
| 87 | + </StackPanel> |
76 | 88 |
|
77 | 89 | <!-- Description --> |
78 | 90 | <TextBlock Text="Description (optional):" FontWeight="Bold" Margin="0,0,0,5" |
|
114 | 126 | </StackPanel> |
115 | 127 | </ScrollViewer> |
116 | 128 |
|
| 129 | + <!-- Status --> |
| 130 | + <TextBlock x:Name="StatusText" Grid.Row="2" |
| 131 | + Foreground="{DynamicResource ForegroundMutedBrush}" |
| 132 | + TextWrapping="Wrap" Margin="0,8,0,0" Visibility="Collapsed"/> |
| 133 | + |
117 | 134 | <!-- Buttons --> |
118 | | - <StackPanel Grid.Row="2" Orientation="Horizontal" HorizontalAlignment="Right" Margin="0,15,0,0"> |
119 | | - <Button Content="Test Connection" Width="120" Height="30" Margin="0,0,10,0" Click="TestConnection_Click"/> |
120 | | - <Button Content="Save" Width="80" Height="30" Margin="0,0,10,0" Click="Save_Click" IsDefault="True"/> |
| 135 | + <StackPanel Grid.Row="3" Orientation="Horizontal" HorizontalAlignment="Right" Margin="0,15,0,0"> |
| 136 | + <Button x:Name="TestConnectionButton" Content="Test Connection" Width="120" Height="30" Margin="0,0,10,0" Click="TestConnection_Click"/> |
| 137 | + <Button x:Name="SaveButton" Content="Save" Width="80" Height="30" Margin="0,0,10,0" Click="Save_Click" IsDefault="True"/> |
121 | 138 | <Button Content="Cancel" Width="80" Height="30" Click="Cancel_Click" IsCancel="True"/> |
122 | 139 | </StackPanel> |
123 | 140 | </Grid> |
|
0 commit comments