将可用项目部分中的所有项目添加到Devexpress布局控件
本文关键字:添加 项目 Devexpress 控件 布局 项目部 | 更新日期: 2023-09-27 18:24:21
我尝试使用Devexpress Layout Control(用于服装使用)。所以我想通过代码将Available-Item Section
中存在的所有项添加到布局控制根目录中作为Layout-Item
。
所以这一定是可能的,But How?
(我不知道,任何解决方案;)
编辑1抱歉第一次信息较少
让我解释一下我在我的例子中所做的,我使用代码在Form-Loaded Event
的Layout控件中创建一个或多个控件。
之后在一个Button_Click
中,我使用:
Layout1.WriteToXML(XmlWriter_Object);
保存Layout Current View
。这些步骤效果很好!如果我想在下一步使用以下命令恢复该视图:
Layout1.ReadFromXML(XmlReader_Object);
结果,我在可用物品部分获得了所有物品(通过代码创建)!这就是我的问题!
为什么会发生这种事?
Ps:XmlReader_Object和XmlWriter_Object都引用了机器上的同一个文件。
要将项目从"可用项目"列表移动到LayoutControl,请执行以下操作。
1) 从LayoutControl.AvailableItems集合中删除项目:
layoutControl1.AvailableItems.Remove(item1);
2) 将此项目添加到布局中。例如,您可以使用以下代码将项目附加到组中:
layoutGroup1.Children.Add(item1);
第1版更新:
动态(在代码中)创建布局项时,有必要使用RegisterName方法注册它们的identifiera(名称)。代码可以如下所示:
LayoutItem layoutItem1 = new LayoutItem()
{
Name = "Item1",
Label = "Item1",
Content = new Button()
{
Content = "Button"
}
};
RegisterName(layoutItem1.Name, layoutItem1);
layoutGroup1.Children.Add(layoutItem1);
这样,一切都应该按预期进行。