My solution uses Resource Dictionaries, which are, as expected, dictionaries: they associate a Key to an Object (for localisation purposes: a String). In WPF, those resource dictionaries can be used within several scopes: Application, Window, Control, and even at FrameWorkElement level, so almost anything can have its own resources. A feature of the WPF ResourceDictionary is that it can contain other ResourceDictionarys, which allows to split the dictionary into multiple smaller ones. Those inner dictionaries are called MergedDictionarys.
Read More from: Original Source
Post Contributed by: Kunal Chowdhury
Kunal is the Site Admin and Contributor of Silverlight-Zone. He is a Software Engineer, Microsoft Silverlight MVP, Code Project Mentor and a Code Project MVP. He is also an active Author in SilverlightShow.net and a speaker in various community events. He works on Microsoft Platform and very passionate about Silverlight technology. He started his career in 2007 and achieved various awards during his professional life.
He shares his findings in his personal blog: http://www.kunal-chowdhury.com and he also tweets at: @kunal2383.