c# - WPF:创建在构造函数中需要参数的应用程序资源 - 如何?

标签 c# wpf resources

我在 App.xaml 文件中创建资源时遇到问题。我的问题是我想实例化一个在其构造函数中需要参数的对象(在这种特殊情况下是我的 Linq-to-Sql DataContext),但我不知道是否可以在 XAML 中传递这样的参数。有谁知道解决这个问题的方法?我想在我的 XAML 中全局访问这个数据上下文,我的想法是我可以将它作为参数传递给 ObjectDataSource:

   <ObjectDataProvider x:Key="PriceCodeProvider" x:Name="priceCodeProvider" ObjectType="{x:Type local:PriceCodeObjectDataProvider}" >
        <ObjectDataProvider.ConstructorParameters>
            <StaticResource ResourceKey="MyDataContext" />
        </ObjectDataProvider.ConstructorParameters>
    </ObjectDataProvider>

从设计的角度来看,我确信有更好的方法可以完成我正在寻找的东西,但我对 WPF 还很陌生......在一些帮助下,我认为这可以完成工作对于我的特定项目。

谢谢!

-查尔斯

最佳答案

XAML 不允许传递构造函数参数。您需要创建一个包装器类,设置属性,然后您的包装器才能正确调用 ObjectDataProvider 构造函数。

关于c# - WPF:创建在构造函数中需要参数的应用程序资源 - 如何?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/703323/

相关文章:

c# - 如何仅在填充上面行的特定单元格后才向 datagridview 添加新行?

wpf - 如何在 WPF 中将 TargetType 设置为此?

wpf - DocumentViewer 到 RichTextBox 绑定(bind)错误

Android:如何使用声音资源包含通知声音?

Django REST Framework : when to create a hyperlinked resource and when nested resource? 如何发布嵌套资源?

C#图表,如何获取最大x轴值?

c# - 如何在c#中使用对变量的引用

linux - Linux 驱动程序中的 platform_get_resource 是什么?

C# UDP 套接字 : Get receiver address

c# - 带虚线的 TreeView/TreeViewItem ControlTemplates