【发布时间】:2012-01-09 01:12:10
【问题描述】:
我不确定我在这里做的是否正确...
我正在编写一个应该是(相当)通用的用户控件。这有点像专门针对我们所做的一些内部工作而修改的电子邮件客户端。
视图由两个主要部分组成,一个消息列表和一个查看器。我需要这个查看器是可互换的,所以如果有人想要不同风格的视图,他们可以简单地处理一个事件并更改一个属性。我最初的想法是只拥有一个 INoteViewer,但由于我将它添加到我的表单中,我还需要保证这个对象是某种 Windows.Forms.Control。
如果我不能将它强制转换为 INoteViewer,我应该继续沿着这些思路并可能引发 ArgumentException,还是应该采取不同的方向并创建一个继承自 Windows.Forms.Control 的类?
【问题讨论】:
-
这个工作..这样做,公共接口 INoteViewer
where T:Control { }? -
在 Vb.Net 中会是这样的:INoteViewer(Of T As Control)
标签: vb.net forms inheritance interface