2011-10-05 102 views
0

在我的WPF用户控件,我有这样定义的属性:如何为本地资源创建资源?

private Converters.CurrencyConverter _CurConverter = null; 
    public Converters.CurrencyConverter CurConverter 
    { 
     get 
     { 
      if (_CurConverter == null) 
       _CurConverter = new Converters.CurrencyConverter(decPlaces); 

      return _CurConverter; 
     } 
    } 

我想设置一个资源,它在我的XAML中,但我不知道该怎么做。我试过这个:

<UserControl.Resources> 
    <ObjectDataProvider ObjectType="{x:Type LocalConverters:CurrencyConverter}" ObjectInstance="{CurConverter}" x:Key="LocalCurConverter" /> 
</UserControl.Resources> 

但是,这显然是不正确的,它提供了如何使用ObjectInstance的问题。我也试过,而不是仅仅建立在资源声明中的对象,例如:

<UserControl.Resources> 
    <LocalConverters:CurrencyConverter x:Key="CurConverter" /> 
</UserControl.Resources> 

但是因为我没有参数的构造函数不起作用。忘记这是一个转换器的事实,我如何创建一个资源到后面的代码中的属性?

由于

回答

0

我使用的第二方法中,增加了一个参数的构造函数,然后设置参数中的代码隐藏接受了原始构造。