People picker ListBox used MouseBinding which fires before SelectedItem updates, causing null CommandParameter. Replaced with SelectionChanged event handler in code-behind. AuditUsersAsync created TenantProfile with empty ClientId, causing ArgumentException in SessionManager. Added currentProfile parameter to pass the authenticated tenant's ClientId through. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
28 lines
849 B
C#
28 lines
849 B
C#
using System.Windows.Controls;
|
|
using SharepointToolbox.Services;
|
|
using SharepointToolbox.ViewModels.Tabs;
|
|
|
|
namespace SharepointToolbox.Views.Tabs;
|
|
|
|
public partial class UserAccessAuditView : UserControl
|
|
{
|
|
public UserAccessAuditView(UserAccessAuditViewModel viewModel)
|
|
{
|
|
InitializeComponent();
|
|
DataContext = viewModel;
|
|
}
|
|
|
|
private void SearchResultsListBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
|
|
{
|
|
if (sender is ListBox listBox && listBox.SelectedItem is GraphUserResult user)
|
|
{
|
|
var vm = (UserAccessAuditViewModel)DataContext;
|
|
if (vm.AddUserCommand.CanExecute(user))
|
|
vm.AddUserCommand.Execute(user);
|
|
|
|
// Clear selection so the same item can be re-selected if needed
|
|
listBox.SelectedItem = null;
|
|
}
|
|
}
|
|
}
|