值不在预期范围内

本文关键字:范围内 | 更新日期: 2023-09-27 18:31:57

我正在使用以下代码来更新列表框,这从 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);
            
    }
       

这工作正常,因为我在加载子窗口时使用它,因此ListBox从数据库中获取列表,但是,当用户选择ListBox中的一个项目时,他们可以选择编辑所选项目。因此,一旦编辑到位,就会有一个编辑按钮,用于更新数据库中表中的列。因此,在单击按钮时,我再次调用上述代码以使用新凭据更新ListBox。但是,这会带来错误:

"价值不在预期范围内。"

为什么我不能在单击按钮时调用 Web 方法,因为它所做的只是刷新ListBox

值不在预期范围内

这可能是由于您尝试将具有相同名称的 ListBoxItem 添加到页面。

如果要使用新检索的值刷新列表框的内容,则必须首先手动删除列表框的内容,否则您的循环将尝试再次创建lb_1并将其添加到同一列表中。

在此处查找发生的类似问题 Silverlight:值不在预期范围异常范围内

我在尝试使用以下内容时,出于完全不同的原因从Visual Studio 2008中收到了相同的通知"值不在预期范围内":工具 -> Windows Embedded Silverlight Tools -> Update Silverlight For Windows Embedded Project。

在花费了许多 ohurs 之后,我发现问题是没有资源文件,更新工具会查找 .RC 文件

因此,解决方案是添加到资源文件夹 a .RC文件,比它完美工作。我希望它能帮助那里的人

在最近使用 WSS 3.0 的情况下,我遇到了同样的问题。这是因为从代码访问的列不在 wss 列表中。