我有一个listbox tuningList
包含List<Tuning> tunings
的元素:
private void LoadList() {
foreach (Tuning tuning in tunings)
tuningList.Items.Add(tuning);
}
在应用程序中的某些时候,我想删除tunings
中的某些元素并更新listbox
int selectionIndex = tuningList.SelectedIndex;
if (selectionIndex >= 0) {
pageTitle.Text = "Deleted tuning";
tunings.RemoveAt(selectionIndex);
// tuningList.Items.RemoveAt(selectionIndex);
saveData(saver); //saves data to isolated storage
}
但之后,该列表框不会自动更新。
编辑:我没有通过XAML将列表框绑定到集合,而是通过LoadList()添加了元素;
<ListBox x:Name="tuningList" Margin="8,0,8,152" Tap="tuningList_Tap"/>
编辑2:
<ListBox x:Name="tuningList" Margin="8,0,8,152" ItemsSource=tunings.Items Tap="tuningList_Tap"/>
编辑3:
<ListBox x:Name="tuningList" Margin="8,0,8,152" DataContext="{Binding RelativeSource={RelativeSource Self}}" ItemsSource="{Binding tunings}" Tap="tuningList_Tap"/>
参考方案
在这种情况下,我的建议是将您的ListBox
控件绑定到ObservableCollection<T>
,当由于实现了INotifyCollectionChanged
而添加或删除某项时,该控件将自动通知视图。
您需要将集合绑定到ListBox
。在XAML中设置LoadList
而不是使用ItemsSource
。否则什么也不会发生。
我想在Windows窗体应用程序中为某些控件创建键盘快捷键。例:注意带下划线的F E V PB。我有一个标签和一个文本框控件。我想将Alt快捷键与标签和文本框相关联。因此,如果有人按Alt + B,则会将焦点分配给关联的文本框。有没有办法建立这种联系? 参考方案 当标签通过按下其加速键(使用&进行设置)获得焦点时,由于标签不可编辑,因此它将焦点按制表…
当回复有时是一个对象有时是一个数组时,如何在使用改造时解析JSON回复? - java我正在使用Retrofit来获取JSON答复。这是我实施的一部分-@GET("/api/report/list") Observable<Bills> listBill(@Query("employee_id") String employeeID); 而条例草案类是-public static class…
改造正在返回一个空的响应主体 - java我正在尝试使用Retrofit和Gson解析一些JSON。但是,我得到的响应机构是空的。当我尝试从对象中打印信息时,出现NullPointerException。我确保URL正确,并且我也确保POJO也正确。我正在使用jsonschema2pojo来帮助创建POJO类。这是我要解析的JSON{ "?xml": { "@versi…
json数组,其中in数组返回错误?坏字符串 - javascript我将json字符串文件解析为python,并且始终返回error。我使用了在线json格式化程序和验证器,它们也返回错误,因此我需要帮助使我的json正确并告诉我错误 [{ "sentence_id": "TR.00001", "sentence": { "text": …
Windows Phone WNS通知导航到特定页面 - c#它是Windows运行时,Windows Phone专用项目。我正在使用Azure和Azure通知中心。所以我的问题是,有谁愿意如何导航到某些特定页面并发送ID等参数。这是我的吐司模板,如字符串中所述: var toast = @"<toast><visual><binding template=""…