我的Windows phone 8应用程序中有一个非常基本的列表框。它不是数据绑定到任何东西,它只是一个空的列表框。
<ListBox Margin="0,10" Name="lstStops" SelectionChanged="favouriteSelection"
Hold="favouriteSelectionHold" FontSize="28">
<ListBox.Items>
</ListBox.Items>
</ListBox>
我希望能够通过按住项目为用户提供从此列表中删除项目的选项。我添加了一个onHold事件,该事件在用户按下列表中的项目时触发并保持,但我不知道如何找出他们选择的列表框中的实际条目。
如何找出他们按下并按住哪个项目?
这是填充列表框的方式:
foreach (KeyValuePair<string, Object> entry in IsolatedStorageSettings.ApplicationSettings)
{
lstStops.Items.Add(entry.Key as String + " - " + entry.Value as String);
}
答案 0 :(得分:2)
有很多次被问过。有不同的方法来实现这一目标。阅读更多here。
一种方法包括获取发件人的datacontext并将其投射到您的Item类型。
编辑:因为它是一堆字符串,所以提取字符串的方法可以是:private void favouriteSelectionHold(object sender, System.Windows.Input.GestureEventArgs e)
{
string n = (e.OriginalSource as TextBlock).Text;
}
仅当您的DataTemplate定义不同时才有效。