内我用下面的代码更新列表框,这个使用recieving从Web服务 -值不在预期范围
client.userKeywordsCompleted += new EventHandler<userKeywordsCompletedEventArgs>(client_userKeywordsCompleted);
client.userKeywordsAsync();
列表 -
void client_userKeywordsCompleted(object sender, userKeywordsCompletedEventArgs e)
{
string result = System.Convert.ToString(e.Result);
for (int i = 0; i < e.Result.Count; i++)
{
ListBoxItem lbitem = new ListBoxItem();
lbitem.Name = "lb_" + i;
lbitem.Content = e.Result[i];
lbitem.AddHandler(UIElement.MouseLeftButtonDownEvent, new MouseButtonEventHandler(ListBoxItem_DoubleClickEvent), true);
listBox1.Items.Add(lbitem);
}
这工作正常,因为我在Child窗口加载时使用它,因此列表框从数据库中获取列表,但是当用户选择列表框中的某个项目时,他们可以选择编辑所选项目。所以编辑就位,有一个编辑按钮,它更新数据库表中的列。然后在按钮上单击,我再次调用上述代码以使用新凭据更新列表框。然而,这带来bcak错误 -
"Value does not fall within the expected range."
为什么不能呼吁按钮单击Web方法,因为所有它做的是刷新列表框???
那么,你会建议我做了什么?我确实看到了答案,我认为你说的是问题。 – Ebikeneser 2012-04-23 17:21:28
其实我只是添加一个清除功能的按钮单击列表框项目,这是第一个tiem与刷新选项,但是如果我再做一次列表框不刷新,你知道这是为什么吗? – Ebikeneser 2012-04-23 17:35:26
清除后只能为了调试而确保项目列表为空。也许你应该考虑在回调中加以明确。 – Stainedart 2012-04-23 17:43:43