I'm trying to get my head around WPF, Unity and MvvMlight (galasoft). So far my little set up works. If I run my application the label is filled with a random name generated by my DataService. (small victory getting all moving parts to work)
But in the design view of Visual Studio the label remains empty. How do i convince VisualStudio to render some 'design time' data in my label?
I'm using: Visual Studio Premium 2013, Unity 4.0.1, MvvmLight 5.2, .net 4.5
App.xaml.cs
public partial class App : Application
{
    protected override void OnStartup(StartupEventArgs e)
    {
        IUnityContainer container = new UnityContainer();
        container.RegisterType<IDataService, DataService>();
        container.RegisterType<IMainViewModel, MainViewModel>();
        MainWindow mainWindow = container.Resolve<MainWindow>();
        mainWindow.Show(); 
        base.OnStartup(e);
    }
}
In App.xaml I have not defined the StartUpUri
MainWindow.xaml
<Window x:Class="UnityMvvmTest.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="300" Width="500">
    <Grid>
        <Label x:Name="myLabel" Content="{Binding MyText}"/>
    </Grid>
</Window>
MainWindow.xaml.cs
public partial class MainWindow : Window
{
    public MainWindow()
    {
        InitializeComponent();
    }
    public MainWindow(IMainViewModel theViewModel)
        : this()
    {
        this.DataContext = theViewModel;
    }
}
MainViewModel.cs
public class MainViewModel : ViewModelBase, IMainViewModel
{
    private readonly IDataService _dataService;
    public MainViewModel(IDataService dataService)
    {
        _dataService = dataService;
        if (IsInDesignMode)
        {
            // Code runs in design time data.
            MyText = "Design Data";
        }
        else
        {
            // Code runs "for real"
            MyText = _dataService.GetName();
        }
    }
    public string MyText { get; set; }
}
 
    