2

这是一个简单的问题(或者可能不是),我已经赶上了。我有一个应用程序 TestApp,它使用我正在处理的 UI 库,而该库又使用图形库 (SharpDX)。

现在 SharpDX 提供了一个 Color 结构(SharpDX.Color)。我的 Window 类 (UI.Window) 接受一个 SharpDX.Color 结构来清除渲染目标。

但是,在使用 UI 库时,SharpDX 命名空间不可用。但这会导致颜色不可用的问题。

那么是否可以在 UI 命名空间中使用 Color,从而避免在使用 UI 库的项目中还需要引用 SharpDX。

谢谢。

4

2 回答 2

1

据我所知,要使用库的一部分,您需要使用整个库(除非作者已将其分解为子模块)。

如果您正在使用 UI 库,如何在不使用 SharpDX 的情况下将其传递给 SharpDX.Color?如果您只想使用您的库的一部分,您可以将依赖于 SharpDX 的组件从其余部分中分离出来。

或者,您可以制作自己的 Color 结构,并在 UI 和 SharpDX 代码之间的交叉处在 UI.Color 和 SharpDX.Color 之间进行转换。

于 2013-05-21T06:19:02.350 回答
1

您需要做的是将颜色结构分离到一个公共库中,或者您可以将颜色结构映射到 UI 库提供的新结构。

如果无法编辑 SharpDX(第 3 方?)的代码,那么您可以在两个项目中引用它或将其映射到 UI 库中的新结构

于 2013-05-21T06:17:53.383 回答