There are times when either a Border control or a Rectangle control will fulfill a need I have. An example would be when I'm implementing a ControlTemplate and I'm already applying a layering technique (i.e. stacking controls in a Grid), and I don't need different RadiusX or RadiusY applied to the corners.
However, when designing such ControlTemplates, sometimes I end up using several such layers of either Borders or Rectangles. As such, I realized I should probably be cognizant as to which control will have the least performance impact on the application. I see that their inheritance hierarchy diverges after FrameworkElement. And I also notice that the Border is a Decorator control (I've worked with Decorators but I'm not sure how they perform relative to other controls). Can someone shed light onto
1) How we might be able to draw some general conclusions about a control's performance impact based on a particular inheritance hierarchy?
2) How do Decorators, such as Border, perform relative to other controls?
3) Specifically regarding Border and Rectangle, which performs better?