C# 为什么可以';我不能用XAML定义一个ResourceDictionary并自己实例化它吗?

C# 为什么可以';我不能用XAML定义一个ResourceDictionary并自己实例化它吗?,c#,.net,wpf,silverlight,xaml,C#,.net,Wpf,Silverlight,Xaml,好的,这个问题很难用一句话来回答。事情是这样的。如果我有这个XAML: <ResourceDictionary x:Class="MyAssembly.MiscResources" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> <SolidColorB

好的,这个问题很难用一句话来回答。事情是这样的。如果我有这个XAML:

<ResourceDictionary
  x:Class="MyAssembly.MiscResources"    
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">

    <SolidColorBrush x:Key="MyBrush" Color="Purple" />    

</ResourceDictionary>

dict
已创建,似乎功能正常,但它有0个元素。并不是说这是一种必要的行为,但我完全不明白为什么它不起作用。我缺少哪一部分?

在ResourceDictionary的分部类中缺少对Initializecomponent()的调用

namespace YourNameSpace
{
    public partial class someClassName: ResourceDictionary
    {
        public someClassName()
        {
            InitializeComponent(); // you need this for the LoadComponent call on the Baml..
        }
    }
}

啊,你说得对。我没有意识到这是把所有碎片粘在一起的重要粘合剂。我觉得它有点神奇。谢谢你,AppledLink。我还以为没人会想到答案呢。你是我的英雄。
namespace YourNameSpace
{
    public partial class someClassName: ResourceDictionary
    {
        public someClassName()
        {
            InitializeComponent(); // you need this for the LoadComponent call on the Baml..
        }
    }
}