При открытии диалогового окна для добавления элемента в бд команда add просто не реагирует. Метод окрытия:
public ViewModelCommand OpenAddNewShopWindow
{
get
{
return openAddNewShopWindow ?? new ViewModelCommand(obj =>
{
OpenAddShopWindowMethod();
});
}
}
private void OpenAddShopWindowMethod()
{
AddNewShopWindow newShopWindow = new AddNewShopWindow();
SetCenterPositionAndOpen(newShopWindow);
}
Метод добавления:
public ViewModelCommand AddNewShop
{
get
{
return addNewShop ?? new ViewModelCommand(obj =>
{
Window wnd = obj as Window;
string result = "";
if (ShopName == null || ShopName.Replace(" ", "").Length == 0)
{
SetRedBlockControll(wnd, "NameBlock");
ShowMessageToUser(result);
}
else
{
result = AdminFunctiones.CreateShop(ShopName);
ShowMessageToUser(result);
wnd.Close();
}
}
);
}
}
Кнопка добавления в xaml:
Button Grid.Row="1" Content="Add shop" Command="{Binding AddNewShop}"
CommandParameter="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Window}}}" Background="#FFE5C6C6"/>
Но когда я перенес текст блок Name и кнопку добавления на главную страницу (т.е. просто убрал диалогjвое окно), команда выполняется. Логика добавления элемента и окрытия окна содеражатся в одной viewmodel, дата контексты к окнам подключены.

DataContextу открываемого окна? Для правильной привязки нужны 3 вещи: 1.DataContextна класс с данными. 2. В классе данных публичное свойство. 3. В XAML указание имени этого публичного свойства черезBinding. – EvgeniyZ Nov 26 '22 at 15:12