开发者

WPF XAML namespace refactoring

开发者 https://www.devze.com 2022-12-08 09:32 出处:网络
Consider a ViewModel and a View that uses it, where the DataContext is set to the VM in the code behind file.

Consider a ViewModel and a View that uses it, where the DataContext is set to the VM in the code behind file.

When they are both at the project namespace, the view runs without exceptio开发者_StackOverflow中文版ns with binding statements along the lines of:

ItemsSource="{Binding Path=PrefixFilterChoices}"

where PrefixFilterChoices is a property on the VM.

When I refactor the project so that ViewModels and Views are each in their own namespace within the project, I now get a runtime error:

(System.IO.IOException' occurred in PresentationFramework.dll, cannot find the resource projectView.xaml).

1) I can't figure out who is looking for the resource though, so I'm not sure what the fix is. The code behind is still setting the DataContext and it has the new namespace for the ViewModel. Must I add it to the XAML also? Must I alias it and now qualify the Path for all of the bindings?

2) I use resharper, which has always been spot on the money at refactoring namespace changes; but it isn't helping even a little with the XAML. Are there any tools that do better XAML refactorings?

Cheers,

Berryl


Part of the answer is that refactoring the namespace affected the application StartupUri. I couldn't get the format right in the xaml so I just set the MainWindow in an application startup event.

0

精彩评论

暂无评论...
验证码 换一张
取 消