How would I go about creating the drop shadow that is shown below for a WPF button (or a Border, etc)? The drop shadow is “curved” and is thicker on the ends and thinner in the middle. I’d like to avoid using images (PNG) if possible, but if that is the best option then so be it. Is there a way to do it using gradients instead somehow?

I think you’ll have to edit the default
Templatefor theButtonand add aShapethat you add theDropShadowEffectto. An even better approach is to create a custom control which derives fromButtonthat has thisTemplateThen you could add Dependency Properties for the values that you would like to be able to configure, likeShadowDepth,BlurRadius, Angle for the Arc etc.Here is an example. It requires a reference to PresentationFramework.Aero.