As the best practice, you can set Data Context in XAML and get it in code behind on the various points.
Here is the sample code. You can instantiate your class in XAML (within the UserControl.Resources) and then bind the datacontext to a static resource.
<UserControl ...>
<UserControl.Resources>
<myNS:MyClass x:Name="TheContext" x:Key="TheContext"></myNS:MyClass>
</UserControl.Resources>
<Grid x:Name="LayoutRoot" Background="White" DataContext="{StaticResource TheContext}" >
<TextBlock Text="{Binding Path=Field1}">
</TextBlock>
</Grid>
</UserControl>