如何从源代码构建和使用自定义WPF控件

如何从源代码构建和使用自定义WPF控件,wpf,Wpf,我使用与NuGet一起安装的第三方WPF控件。我需要对其进行更改,并且源代码可以在GitHub上获得。我已经克隆了回购协议,但我现在该怎么办 我只是将文件复制到我的项目中的某个地方,还是应该将自定义控件构建为一个单独的项目 具体来说,它是您可以在项目中包含所有这些代码,也可以构建DLL,只在项目中包含单个DLL,正如lokusking在其评论中提到的那样,因为这将有助于减少开销代码并使主项目更具可读性 因此,对于此特定控件,您需要在进行更改并在主应用程序中引用TermControls.dll后构

我使用与NuGet一起安装的第三方WPF控件。我需要对其进行更改,并且源代码可以在GitHub上获得。我已经克隆了回购协议,但我现在该怎么办

我只是将文件复制到我的项目中的某个地方,还是应该将自定义控件构建为一个单独的项目


具体来说,它是

您可以在项目中包含所有这些代码,也可以构建DLL,只在项目中包含单个DLL,正如lokusking在其评论中提到的那样,因为这将有助于减少开销代码并使主项目更具可读性

因此,对于此特定控件,您需要在进行更改并在主应用程序中引用TermControls.dll后构建项目,然后将名称空间添加到XAML中,如下所示:

      xmlns:TermControls="clr-namespace:TermControls;assembly=TermControls"
以下是有关如何执行此操作的更多信息:


嘿,这是我的组件,我很高兴听到有人使用它:)

如果您想按原样使用它,只需将dll添加到您的项目中或使用nuget安装它

若您想为github项目做出贡献,那个么就分叉repo并创建一个pull请求

我只是将文件复制到我的项目中的某个地方,还是应该构建 是否将自定义控件作为单独的项目


依我看,这两种方法都是正确的。这取决于您的项目和团队工作流程。

谢谢您的回答。我让它工作起来了,我想我应该写下我所做的

  • 首先删除XAML文件顶部的控件和指令,然后使用NuGet卸载库。我认为如果不是这样的话,会有命名冲突
  • 将控制源复制到solutions base目录中
  • 进入添加-->现有项目并找到
    TermControls.csproj
    文件
  • 构建项目
  • 回到主项目中,自定义控件现在显示在工具箱中。像添加其他控件一样添加它

  • “我有文件。我应该把它们作为一个单独的项目吗?”这不是一个任何人都能回答的问题,没有一点细节。有多少文件?什么样的文件?它只是一个.cs文件和一个.xaml文件吗?您通常如何决定是否将某个项目放在单独的项目中?我总是将其作为单独的控件。它从主应用程序中去掉了所有(大部分)开销代码。这只是一个附加功能。为什么一直带着整个密码