问题标签 [system.componentmodel]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 使用 vb.net 声明一个 IsInDesignMode 属性以在 wpf 中使用
在他的一篇博文中,Laurent Bugnion 演示了以下代码片段作为检测 wpf 设计时间模式的一种方法
当我碰巧在 VB 中工作时,我开始使用 Telerik 的在线代码转换器进行翻译,结果如下:
但是,如果一个人启用了 Option Strict On(默认情况下我这样做,这将无法编译,指出 system.windows.DependencyProperty 和 system.ComponentModel.DependencyProperty 之间存在差异。
代码转换器抛出的大多数错误我通常可以最终修复,但是这个(可能是因为整个 wpf 对我来说很新)给我带来了问题。
任何人都可以解释错误的根本原因(以便我可以积极理解它)并可能提供更正的 vb 转换。
谢谢
c# - C# - 委托专业化
考虑以下内置委托:
我是否可以将委托扩展/重载/覆盖到此签名:
其中 MyPropertyChangedEventArgs 被声明为
并且拥有该事件的类被声明为
和事件订阅应该允许访问 MyPropertyChangedEventArgs 属性,而无需在任何地方键入 PropertyChangedEventArgs 并且仍然不会丢失与属性的开箱即用 XAML 绑定。
示例用例:
c# - PropertyGrid 数组编辑器的自定义视图
我的默认属性窗口如下所示:
有可能以某种方式改变这种观点吗?
例如,我想显示我的 Template.Name 属性值和 Template.Description,而不是 [array index] 和命名空间。
有没有可能做到这一点?
asp.net-mvc - ComponentModel.DataAnnotation 和装饰器模式有什么区别?
我在我的项目中实现存储库装饰器模式:
我从以下链接中得到了这个想法。
https://efpatterns.codeplex.com/discussions/282699
但未能成功实施。然后我开始学习装饰器模式和 DataAnnotation,因为 Product 实体上的 Auditable 属性的方式在 DataAnnotation 和装饰器模式中有些相似。所以我的问题是它们是一样的吗?如果它们相同,那么我将如何在我的项目中实现可审核存储库模式(更多链接)。
c# - 添加 TypeDescriptor Provider 时阻止重复的列
我正在尝试使用以下代码为我在 datagridview 中使用数据源的类添加 TypeDescriptor Provider:
问题 1:
第一次一切都很好,但是当我关闭表单并再次打开时,数据提供程序描述符两次列,我尝试先删除提供程序,然后再次添加,但它不起作用。
有 MyTypeDescriptionProvider,我在网上搜索到:
问题2:
我怎样才能使 MyTypeDescriptionProvider dinamyc,我的意思是如果你可以检查,我硬编码 GetProvider 的类(TarifadoBloquesBE),在这部分:
我想允许发送什么类将是提供者。谢谢你。
我附上了两张图片,第一张还可以,下一张你可以检查两列,只看到滚动条。
这里一切都好
重复列
c# - 验证不会触发 (System.ComponentModel.DataAnnotations)
我在这里有这个类,有 2 个属性Name
和Age
我尝试验证这些值
但唯一触发的验证属性是[Required]
我的错误在哪里?
.net - 根据 Visual Studio 2013 cl.exe,为什么 CancelEventHandler 和 CancelEventArgs 不在 System::ComponentModel 中?
我正在玩 C++/CLI 和 WPF,因为我很无聊。我正在尝试针对 .net 3.0 进行此游戏。我想处理一个 System.Windows.Window 的 Closing 事件;如果我尝试,cl.exe 会抱怨 CancelEventHandler 和 CancelEventArgs。
这是一个简单的复制:
编译
在 x86 构建工具命令行中,我得到
(以及由于未声明而导致的其他错误e
)。如果我改变
至
然后我也得到
发生什么了?我所做的每一次搜索都表明这两种类型肯定在 System.ComponentModel 中......
这适用于 Windows 7 64 位上的 Visual Studio 2013。编译器的版本序言是
(我可能也没有正确使用 .net 版本......)谢谢。
c# - 如何指定使用 System.Composition (MEF2) 加载哪些 DLL?
我正在开发一个新的插件加载器应用程序框架并阅读所有可用的 MEF 变体,我认为最具前瞻性和灵活性的是 NuGet 提供的 MEF2 实现,如System.Composition
.
不幸的是,大多数(如果不是全部)在线教程都是为 MEF1 编写的,即System.ComponentModel.Composition
使用AssemblyCatalog
从例如在目录中显式查找 DLL 并将其传递给 MEF 创建的CompositionContainer
。
MEF2 没有这个对象,因此我仍然不清楚 MEF2 在哪里找到它的组件。它们不能在运行时定位吗(这意味着需要添加每个插件作为对加载插件的应用程序的引用)?这会让我觉得很奇怪。
任何人都可以阐明如何指定将从哪里加载哪些程序集(以及我应该如何设置它)System.Composition
?我了解 MEF2 的设计考虑了 PCL(我正在编写桌面应用程序),但如果只需为未来的便携性支付很小的设置成本,我完全赞成。如果没有,我会屈服于使用System.ComponentModel.Composition
我能弄清楚的。
c# - 如何在我的解决方案中使用相同的 CompositionConainer 对象(或其包含的程序集)?
让我解释一个非常简单的例子来说明我需要什么。假设我有一个使用 MEF 的 VS 解决方案,并且具有以下广泛的项目和类结构。
- 服务器(项目)
- Server.cs(包含
Main
方法,用于启动应用程序。)
- Server.cs(包含
- 共享(项目)
- \合同
- ILogger.cs
- ISettings.cs
- \合同
- 设置(项目)
- MySettings.cs(实现 ISettings 的类)
- 记录器(项目
- MyLogger.cs(实现 ILogger 的类)
鉴于...
- 以上所有项目都引用了 Shared 项目。
- 服务器是启动应用程序,它将所有目录初始化到一个应用程序容器中。
MySettings
...我可以启动一个应用程序并MyLogger
在我的应用程序中初始化一个单例Server
。到目前为止,一切都很好。
现在,让我们假设MyLogger
需要访问输出目录的设置文件。目录位置的值存储在MySettings
对象中,该对象被初始化Server.cs
为CompositonContainer
.
由于我使用的是 MEF,因此我不想在项目中引用该Settings
项目Logger
。相反,我想使用 MEF 来获取当前的应用程序 ISettings
单例,它在我的应用程序开始时被初始化Server
并与服务器一起存在CompositionContainer
。
如何使用 MEFMySettings
从内部正确访问单例?MyLogger
c# - SerializationStore 找不到引用
尝试使用 ComponentSerializationService 进行反序列化时,会填充未找到引用的错误:
错误如:
找不到类型“System.Drawing.Size”。请确保引用了包含此类型的程序集。如果此类型是您的开发项目的一部分,请确保已使用当前平台或任何 CPU 的设置成功构建项目。
在这里,我通过了一个 Button 控件并设置了 size 属性。