DataSource Update jeweils

This commit is contained in:
2026-03-27 11:42:14 +01:00
parent aa092812b2
commit 549e77652f
3 changed files with 24 additions and 6 deletions

View File

@@ -189,6 +189,8 @@ namespace BeWo.View.Controls.AI
view2.Background = FindResource("ObjectEditBackgroundBrush") as System.Windows.Media.Brush;
border_promptbaustein_favoriten.Child = view2;
viewmodel.VMListReloaded += (s, e) => viewmodel2.ReloadVMList(false);
AiPromptOpenAllCommand = new DelegateCommand(AiPromptOpenAll);
AiPromptOpenFavoriteCommand = new DelegateCommand(AiPromptOpenFavorite);
});

View File

@@ -4,6 +4,7 @@ using BeWo.ViewModel;
using BeWo.ViewModel.View.AI;
using BS.Shared;
using BS.Shared.DataContracts.Feature.AI;
using DevExpress.Mvvm;
using DevExpress.Utils.Mdi;
using System;
using System.Collections.Generic;
@@ -127,6 +128,8 @@ namespace BeWo.View.Controls.AI
view2.Background = FindResource("ObjectEditBackgroundBrush") as System.Windows.Media.Brush;
border_promptbaustein_favoriten.Child = view2;
State = AiPromptbausteinButtonState.Normal;
viewmodel.VMListReloaded += (s, e) => viewmodel2.ReloadVMList(false);
});
}
private void UpdateState(AiPromptbausteinButtonState state)

View File

@@ -23,6 +23,7 @@ namespace BeWo.ViewModel.View.AI
public class AiPromptbausteinSelectionComplexViewModel : DialogViewModel
{
public event EventHandler<AiPromptbausteinPromptVM> PromptAccepted;
public event EventHandler VMListReloaded;
private AiPromptbausteinFolderVM _SelectedFolder;
private AiPromptbausteinPromptVM _SelectedPrompt;
@@ -139,10 +140,10 @@ namespace BeWo.ViewModel.View.AI
public void ResetSelection()
{
if (!IsFavorite)
SelectedFolder = null;
SelectedFolder = null;
SelectedPrompt = null;
if (IsFavorite)
SelectedFolder = Folders.VMList[0];
}
public void Send()
{
@@ -163,16 +164,28 @@ namespace BeWo.ViewModel.View.AI
VMFactory.CreateAiPromptbausteinFolderListVMAsync(AiActionType, UpdateVMList);
}
public void ReloadVMList()
public void ReloadVMList(bool notify = true)
{
VMFactory.CreateAiPromptbausteinFolderListVMAsync(AiActionType, UpdateVMList);
if(notify)
VMListReloaded?.Invoke(this, EventArgs.Empty);
}
private void UpdateVMList(AiPromptbausteinFolderListVM new_list)
{
Folders = new_list;
if (Folders.VMList.Count > 0 && Folders.VMList[0].DataContract.Oid == -5)
Favoriten = Folders.VMList[0];
FirePropertyChanged(nameof(Folders));
if (Folders.VMList.Count > 0 && Folders.VMList[0].DataContract.Oid == -5)
{
Favoriten = Folders.VMList[0];
if (IsFavorite)
SelectedFolder = Favoriten;
}
FirePropertyChanged(nameof(HasFavoriten));
}
public void UpdateFolderCommands()