Выбираю категорию, но программа не видит этого

Выбираю категорию, но программа не видит этого.

Какого условия и где не хватает?

введите сюда описание изображения

Это мой XAML EditProductWindow ( картинка "не выбрана категория" )

<...>
<ComboBox ItemsSource="{Binding AllCategorys}"
                          DisplayMemberPath="Name"
                          SelectedValuePath="{Binding CategoryName}"/>
<...>
<Button Grid.Row="1" Content="Изменить"
                    Command="{Binding EditProduct}"
                CommandParameter="{Binding ElementName=EditProductWnd}"/>
        </Grid>
    </Grid>
</Window>

<..>

command EditProduct
        private RelayCommand editProduct;
        public RelayCommand EditProduct
        {
            get
            {
                return editProduct ?? new RelayCommand(obj =>
                {
                    Window window = obj as Window;
                    string resultStr = "Не выбран товар";
                    string noCategoryStr = "Не выбрана категория";
                    if (SelectedProduct != null)
                    {
                        if (SelectedCategory != null)
                        {
                            resultStr = DataWorker.EditProduct(SelectedProduct, SelectedCategory);

                            UpdateAllDataView();
                            SetNullValuesToProperties();
                            ShowMessageToUser(resultStr);
                            window.Close();
                        }
                        else ShowMessageToUser(noCategoryStr);
                    }
                    else ShowMessageToUser(resultStr);
                });
            }
        }
methond EditProduct
<..>
    public static string EditProduct(Product oldProduct, Category category)
    {
        string result = "Такой товар уже существует";
        using (ApplicationContext db = new ApplicationContext())
        {
            bool checkIsExist = db.Products.Any(el => el.Barcode == DataManageVM.ProductBarcode);
            if (!checkIsExist)
            {
                Product product = db.Products.FirstOrDefault(p => p.Id == oldProduct.Id && p.Name == category.Name);
                product.Name = DataManageVM.ProductName;
                product.Price = DataManageVM.ProductPrice;
                product.Weight = DataManageVM.ProductWeight;
                product.Unit = DataManageVM.ProductUnit;
                product.Barcode = DataManageVM.ProductBarcode;
                category.Name = DataManageVM.CategoryName;

                db.SaveChanges();
                db.Dispose();
                result = "Название товара измененно";
            }
            return result;
        }
    }

Ответы (1 шт):

Автор решения: aepot

SelectedItem отвечает за выбранный элемент

<ComboBox ItemsSource="{Binding AllCategorys}"
          DisplayMemberPath="Name"
          SelectedValuePath="{Binding CategoryName}"
          SelectedItem="{Binding SelectedCategory}"/>

P.S. правильно пишется AllCategories, а не AllCategorys.

→ Ссылка