当我删除元素时,layout.children.clear()和layout.children.remove()之间有区别吗?

时间:2018-08-02 09:52:11

标签: xamarin xamarin.forms

我已经使用C#将元素添加到我的布局中,其名称为detailsLayout。我添加了约20个grid元素,其中每个元素都是更多元素:

现在我要删除那些元素。这两种方式之间是否有区别:

detailsLayout.Children.Remove();

detailsLayout.Children.Clear();

1 个答案:

答案 0 :(得分:0)

我没有验证这一点,但我可以想象以下内容。 Remove用于删除1个条目。这样,删除操作还将调用与删除一项相关的所有事件。例如更新用户界面或触发事件。

使用Clear,首先删除所有子项,然后完成所有相关的操作,例如再次更新UI或触发事件。因为很明显,由于您正在调用Clear,所以您希望删除所有所有子级,所以系统可以等待触发结果操作,直到操作完成。

在这种情况下,主要取决于性能。最后,两者将具有相同的结果。