我使用WPF并在用户控制面板中添加WrapPanel子项。就像这样:
SearchPanel sp = new SearchPanel();
sp.Clock = clock;
sp.Name = item.CustomerTwo;
sp.Color = "Purple";
wPanel.Children.Add(sp);我如何组织这个添加的面板
发布于 2019-12-24 11:04:44
这个问题的简单答案是,它们按照添加到Children集合中的顺序出现。
如果使用XAML显式添加它们,则它们在XAML中的出现顺序相同。
如果您是通过绑定WrapPanel的ItemsSource来添加它们的,那么它们将按照绑定的集合呈现它们的顺序出现。
至于你的具体例子..。
在您的链接代码中,颜色基于间接从每个“客户”项目获得的日期。要基于此订购WrapPanel,您需要首先按相同的标准对您的客户项目进行排序。
不幸的是,日期逻辑是错综复杂的(使用一个与Days表的DB关系,然后使用一些笨拙的日期操作代码)。您可以在比较函数中使用这种错综复杂的日期逻辑来首先对客户项目进行排序。或者,您可以向"newSearchPanel“类添加一个属性,在构造它们时计算该属性,并将它们添加到一个临时列表中,在最终将它们推入WrapPanel之前对该列表进行排序。
https://stackoverflow.com/questions/59447785
复制相似问题