Q:

What is the appropriate way to replace local: keyword with a path?

Problem
Take the following code snippet:
<DataTemplate DataType="{x:Type local:TestViewModel}">
        <local:TestView></local:TestView>
</DataTemplate>

local: is defined like this: 
xmlns:local="clr-namespace:Palette_Packing"

Now, TestViewModel is in a subfolder, with corresponding namespace Palette_Packing.ViewModels.
Obviously, local: refers to a different namespace, where TestViewModel ist not found.
How do I replace local: with the appropriate path to my TestViewModel?
What I have tried so far
Of course I tried the following:
<DataTemplate DataType="{x:Type Palette_Packing.ViewModels.TestViewModel}">
        <Palette_Packing.Views.TestView></Palette_Packing.Views.TestView>
</DataTemplate>

This however yields an error about unsupported nested types. 
Setting the class TestViewModel to public does also not resolve the issue.
Disclaimer
The code snippets show a ViewModel and a View, the problem exists for both. For clarity's sake I only asked about the ViewModel.
Also, if ViewModel and View are moved from their subfolder to the main directory, local: works fine, as expected.

A:

Declare another namespace
xmlns:vm="clr-namespace:Palette_Packing.ViewModels"

Then write
DataType="{x:Type vm:TestViewModel}"

