gpt4 book ai didi

c# - WPF 中类似甘特图的 View /用户控件,如何创建

转载 作者:行者123 更新时间:2023-11-30 19:27:02 25 4
gpt4 key购买 nike

我需要在 WPF 中创建一个 UserControl 或一个 View,它能够像在日历中一样在标题中显示天数,并在垂直方向上显示用户列表,并且对于每个用户,就像放置的计划栏一样在网格内,在天数下方,这将显示该计划需要多少天。它类似于甘特图 View ,可从 Telerik 或 DevExpress 获得,但我不允许使用任何付费来源/控件/工具包。问题是我不知道如何开始,必须使用什么布局,什么控件等。

喜欢这里: enter image description here

我尝试为每个用户垂直创建一个 ListView,水平使用 ItemsSource,但在这种情况下,我需要对每一行进行绑定(bind),即使用户在那段时间没有任何计划,所以它会导致太多无用绑定(bind),并且此解决方案也不能根据屏幕大小进行调整,除非您更改绑定(bind)到的元素的数量。

我只需要在存在数据的地方以类似于图像的方式展示一些东西。这意味着我需要一个容器控件,它将包括页眉和显示计划的泳道。

此外,宽度必须可调,这样用户拥有的屏幕越多,横向显示的天数就越多。

我该如何创建它?哪些控件,我必须使用哪些控件?

我希望得到类似于以下示例的答案:容器控件:ListView水平泳道:GridView 或 Canvas条形:简单的矩形

提前致谢!

编辑

我找到了一个时间表项目。它是开源的,并且有很好的例子。 CodePlex Timeline project

最佳答案

我会重新考虑第三方控制的事情;稳健地构建它比购买它要昂贵得多(取决于您的小时成本)。

如果您想自己构建它,您将需要以下内容:

  • 内容水平和垂直滚动
  • 行和列中的标题分别垂直和水平滚动,与上一项同步。
  • 项目模板、连接器模板
  • block 之间依赖性管理的一种形式(数据层次结构)。
  • 连接器的路由,它们需要位于单独的层中,因为它们跨越多个泳道。还需要合并多个箭头。
  • 等等

要求相当苛刻,你需要为此编写大量代码。

关于c# - WPF 中类似甘特图的 View /用户控件,如何创建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19958922/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com