Wpf定制控制电影院,体育场或大厅

时间:2016-03-23 11:54:30

标签: wpf wpf-controls

我有一个在wpf控件中创建的任务尽可能接近这个 from the link (please click "Select Tickets" tab to see a control)

我想问一下从哪里开始的建议? 我应该使用 canvas 吗?如果它不是画布,如何使用缩放?

enter image description here

2 个答案:

答案 0 :(得分:1)

这个问题有很多答案。乍一看,我会尝试按照以下步骤进行操作:

  1. 创建点的控件 - >一个圆圈(Path),其颜色具有依赖属性。
  2. 创建一个动态Grid,其中包含您想要的列数和行数,并在第一步中使用正确的填充颜色在每个单元格中插入您创建的控件。
  3. 应通过调整动态网格中的列数和行数来实现缩放。如果减少了列数,自定义控件将被拉伸并显示为缩放区域。
  4. 请记住,您必须使用ObservableCollections和TwoWay Bindings才能在UI上获取更新。
  5. 希望它有所帮助!祝你好运

答案 1 :(得分:1)

您可以使用ViewBox启用控件以调整可用空间的大小。

@Dragosh的答案是个不错的选择。但通常座位布局不是网格。我建议创建一个自定义ItemsControl,它绑定到一个' Seats'具有概述其Section,Row等和位置的属性。这样您就可以创建一个DataTemplate和ItemStyle,将座位控件放在正确的位置。