Acessando o controle entre DataGridCells, ComboBoxes em cascata dinâmicos

Eu tenho um DataGrid que duas de suas colunas são ComboBoxes (uma contém poucas, mas não é esse o problema).

Quero que, quando o usuário alterar o primeiro valor do Combo, o ComboBox na outra coluna se vincule a uma propriedade dele (essa propriedade é uma coleção). Digamos que a Primeira ComboBox seja Categoria, quero que, quando o usuário altere seu valor, o outro CB seja preenchido com os valores de (categoria selecionada da primeira combinação) .Vendedores.

Como devo fazer isso, não uso o MVVM, apenas o WPF simples. Não sei qual deve ser o caminho certo para implementá-lo, espero ter começado corretamente.

Eu acho que, se eu pudesse obter a outra ComboBox (que está localizada em um DataGridCell diferente) do SelectionChangeHandler do primeiro que seria o melhor, porque então eu posso redefinir sua fonte em cada alteração de seleção do primeiro. Observe que tenho a capacidade de alcançar o DataGridCell atual (do primeiro); estou apenas procurando uma maneira eficiente de acessar o irmão DataGridCell correto e obter seu combo filho (segundo).

Observe também que a categoria selecionada deve variar de uma linha para outra e a segunda caixa de combinação deve depender da categoria dessa linha.
Na verdade, tentei implementá-lo para que o CollectionViewSource.Source seja vinculado ao item atual (ou seja, o DataContext da linha), mas ele não parece funcionar.
Prefiro definir o CollectionViewSource do segundo combo (VendorsCollection) por meio de um acionador ou manipulador de Ação no SelectionChange do 1º ComboBox.

As outras ComboBoxes nesse campo não parecem causar problemas, pois estão ligadas entre si, eu posso usar o CollectionViewSource.Filter, de qualquer maneira, não é um problema acessá-las, pois são irmãos simples, não como o primeiro. que é um primo distante localizado no fundo de outro DataGridCell.

Aqui está o que eu tentei até agora:

<DataGrid>
    <DataGrid.Resources>
        <CollectionViewSource x:Key="CategoriesCollection" Source="{Binding Context.CategoriesList, Source={x:Static Application.Current}, IsAsync=True}" />
    </DataGrid.Resources>

    <DataGrid.Columns>

        <DataGridTemplateColumn Header="Category">
            <DataGridTemplateColumn.CellTemplate>
                <DataTemplate>
                    <TextBlock DataContext="{Binding Category}" Text="{Binding Title}"/>
                </DataTemplate>
            </DataGridTemplateColumn.CellTemplate>
            <DataGridTemplateColumn.CellEditingTemplate>
                <DataTemplate>
                    <!--This is the first ComboBox-->
                    <ComboBox
                                IsSynchronizedWithCurrentItem="False"
                                ItemsSource="{Binding Source={StaticResource CategoriesCollection}}"
                                DisplayMemberPath="Title"
                                SelectionChanged="cbCategories_SelectionChanged"
                                SelectedItem="{Binding Category}"/>
                </DataTemplate>
            </DataGridTemplateColumn.CellEditingTemplate>
        </DataGridTemplateColumn>

        <DataGridTemplateColumn Header="Style">
            <DataGridTemplateColumn.CellTemplate>
                <DataTemplate>
                    <StackPanel>
                        <TextBlock DataContext="{Binding Finish.Style.Vendor}" Text="{Binding Contact.Title}"/>
                        <TextBlock DataContext="{Binding Finish.Style}" Text="{Binding Title}"/>
                        <TextBlock Text="{Binding Finish.Title}"/>
                    </StackPanel>
                </DataTemplate>
            </DataGridTemplateColumn.CellTemplate>
            <DataGridTemplateColumn.CellEditingTemplate>
                <DataTemplate>
                    <StackPanel>
                        <StackPanel.Resources>
                            <!--I want, that when the user selects a value in the first ComboBox,
                    the VendorsCollection below should be populated with the selected Category.Vendors,
                    or alternatively current row's data item.Category.Vendors,
                    I just donno how to access current row from these resources.-->
                            <CollectionViewSource x:Key="VendorsCollection" Source="{Binding Vendors, Source={StaticResource CategoriesCollection}}" />
                            <CollectionViewSource x:Key="StylesCollection" Source="{Binding Styles, Source={StaticResource VendorsCollection}}" />
                            <CollectionViewSource x:Key="FinishesCollection" Source="{Binding Finishes, Source={StaticResource StylesCollection}}" />
                        </StackPanel.Resources>
                        <ComboBox                                                       
                                    IsSynchronizedWithCurrentItem="True"
                                    ItemsSource="{Binding Source={StaticResource VendorsCollection}}"
                                    SelectedItem="{Binding Finish.Style.Vendor}"
                                    DisplayMemberPath="Contact.Title"/>
                        <ComboBox
                                    IsSynchronizedWithCurrentItem="True"
                                    ItemsSource="{Binding Source={StaticResource StylesCollection}}"
                                    SelectedItem="{Binding Finish.Style}"
                                    DisplayMemberPath="Title"/>
                        <ComboBox
                                    IsSynchronizedWithCurrentItem="True"
                                    ItemsSource="{Binding Source={StaticResource FinishesCollection}}"
                                    SelectedItem="{Binding Finish}"
                                    DisplayMemberPath="Title"/>
                    </StackPanel>
                </DataTemplate>
            </DataGridTemplateColumn.CellEditingTemplate>
        </DataGridTemplateColumn>

    </DataGrid.Columns>
</DataGrid>

questionAnswers(1)

yourAnswerToTheQuestion