gpt4 book ai didi

c# - 尝试在 WPF 应用程序中将网格线动画化到屏幕上,并检测一次可以在屏幕上显示多少条线

转载 作者:行者123 更新时间:2023-11-30 18:32:55 25 4
gpt4 key购买 nike

我正在创建一个显示在餐厅电视屏幕上的食物菜单。菜单项之间不会有任何交互,所以我需要自动显示项目并在所有项目不能同时显示在屏幕上时旋转它们。

我已经构建了项目的所有组件,甚至管理菜单项是什么以及在哪一天显示它们。现在,我需要完成电视屏幕项目的显示。

我是 WPF 的新手,所以我想找出最好的方法:

  1. 菜单项列出了项目名称以及卡路里、蛋白质、脂肪和胆固醇。因此,它们需要显示在网格中。
  2. 没有用户与菜单的交互,所以我需要确保我可以将项目列表正确地分解为“页面”,在显示几秒钟后在屏幕上和屏幕外显示动画。我考虑这样做的方式是将每个项目添加到 View 中并评估其下方有多少可用空间。如果空间小于一定高度,则其余菜单项将排队显示在下一个“页面”上。如果每个订单项都从左侧快速滑入,并在 1-2 秒内全部显示在屏幕上,那就太好了。
  3. 显示它们的最佳控件是什么?也许是 ItemsControl?

如果你们有任何能为我指明正确方向的好主意,我将不胜感激!

更新:这是我所说内容的一个非常粗略的模型:enter image description here

最佳答案

您或许可以使用 Grid 或 StackPanel 并为元素的边距值设置动画(使用负边距将项目滑入)。您需要确保父元素的 ClipToBounds 设置为 false,以便可以在其边界之外绘制项目。

要测量元素的高度,只需对行元素使用 Measure 方法来计算它在垂直方向上需要多少空间。基于此,您可以确定一页中可以容纳多少元素。

关于c# - 尝试在 WPF 应用程序中将网格线动画化到屏幕上,并检测一次可以在屏幕上显示多少条线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18132168/

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