the problem is that the WPF designer has to execute your code to see what data is available to it on the viewModel the DesignerProperties contains a method GetIsInDesignMode that you can use to disable logic when your code is being executed by the designer