1

我已经为我的 WP8 应用程序定义了一个 XAML 页面,该应用程序当前包含LongListSelector一个ItemTemplate.

我正在输出一些个人信息,例如姓名和年龄。每个都是这样TextBlock定义的:

<TextBlock Text="{Binding Age, StringFormat='Age: {0}'}" Visibility="{Binding AgeVisibility}"/>

问题是用户并不总是输入所有数据,因此有时会丢失某些属性(例如年龄)。在这些情况下,我想删除TextBlock.

使用按原样定义的代码(注意Visibility属性的使用)它只会隐藏元素,从而在表单中留下难看的空间。

有没有办法从列表中删除一个元素,如果它可能未定义/丢失?

编辑:我应该注意,虽然我确实使用了 a LongListSelector,但它实际上只包含一个元素。然后将此元素绑定到具有许多属性的纯数据类:

public class Details
{
    public string Name { get; set; }
    public string Age { get; set; }
}
4

1 回答 1

2

我建议创建一个ObservableCollection您想要绑定的对象,并将其添加到LongListSelector这样的对象中:

longListSelector.ItemsSource = myCollection;.

每次你想从列表中删除一个元素时,你只需调用类似myCollection.RemoveAt(0)的东西,列表就会自行更新。

于 2013-09-03T07:03:22.073 回答