I want to create a Generic DataGrid to use on all my Views/UserControls.
This is my structure:
public class ViewBase : UserControl
//Rest of Methods and Properties
public partial class GridView : ViewBase
public GridView ()
public class View : GridView
"The component 'WpfApp.View' does not have a resource identified by the URI '/Controls;component/GridView.xaml'."
I was doing something very similar with the same result. I had one C# class library that contained a WPF control called UsageControl (xaml with accompanying xaml.cs file). In a separate C# project(i.e. separate dll) I created a C# class CPUUsageControl which inherited from UsageControl, but put its own spin on it. When i tried to use the CpuUsageControl on one of my views i got the same error you did.
What i did to fix that was in my seperate assembly, instead of creating a class that inherited from the base control, i created a new WPF Control that contained the base control. I then put all of the logic that was contained in the CpuUsage class into the WpfCpuUsageControl's code behind. I was able to use this object is all of my other controls just fine.
For your Control "GridView" i would create a new WPF user control, call it GridView and make it contain a "ViewBase" as the content of the Grid control.Inside of the ViewBase's content put in your DataGrid, like this:
<UserControl....> <Grid> <ViewBase name="vBase"> <DataGrid name="dGrid" /> </ViewBase> </Grid> </UserControl>
It is also not apparent to me that you need ViewBase to inherit from UserControl directly. If all you want are for your controls to have certain properties and method why not just make a BaseControl class (that does not inherit from anyone but object) and have future controls inherit from it. Perhaps an abstract base class or interface is what your after.
For MVVM WPF projects, i typically have a BaseViewModel which implements INotifyPropertyChanged for me so i dont have to do that same code everywhere.
Best of luck, i know this problem was a huge pain to figure out. The exception message and google are most unhelpful!