首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >银光2 ArgumentException

银光2 ArgumentException
EN

Stack Overflow用户
提问于 2008-12-12 00:08:11
回答 3查看 5.5K关注 0票数 3

我有一个silverlight 2应用程序,它有一个来自独立assem/lib的类的ObservableCollection。当我在这个集合上设置我的ListBox.ItemsSource并运行它时,我得到了错误代码:

4004 "System.ArgumentException:值不属于预期范围。

下面是代码的一部分:

代码语言:javascript
复制
public partial class Page : UserControl
{
    ObservableCollection<Some.Lib.Owner> ooc;

    public Page()
    {
        
        ooc = new ObservableCollection<Some.Lib.Owner>();
        Some.Lib.Owner o1 = new Some.Lib.Owner() { FirstName = "test1" };
        Some.Lib.Owner o2 = new Some.Lib.Owner() { FirstName = "test2" };
        Some.Lib.Owner o3 = new Some.Lib.Owner() { FirstName = "test3" };
        ooc.Add(o1);
        ooc.Add(o2);
        ooc.Add(o3);

        InitializeComponent();
        lb1.ItemsSource = ooc;
    }
}

但是当我在同一个项目中创建Owner类时,一切都很好。在幕后有什么安全的事情吗?另外,当我创建这个Silverlight 2应用程序时,我使用的是generate页面选项,而不是aspx选项。

EN

回答 3

Stack Overflow用户

发布于 2008-12-17 00:47:53

您是想使用标准类库还是"Silverlight类库“?

因为Silverlight 2使用CLR的一个子集,所以它不能访问使用完整CLR编译的标准类库。若要使用外部程序集,必须将其创建为"Silverlight类库“。这将创建一个只包含Silverlight可用名称空间的项目,并允许您引用Silverlight项目中的程序集。

有关更多信息,请查看MSDN文章“Silverlight.NET框架类库”

票数 1
EN

Stack Overflow用户

发布于 2010-04-24 00:52:34

这可能是因为您没有处理SubmittedChanges()中的故障。有关更多信息,请参见http://www.scottleckie.com/2010/04/code-4004-unhandled-error-in-silverlight-application/

票数 0
EN

Stack Overflow用户

发布于 2020-12-17 01:19:35

现在一切都在一个项目中。

是的,但不像你刚才做的那样,相反,共享,链接到文件。

因此,当应用程序和服务之间需要共享共同的entity代码时,这是一个古老的绝地思维技巧Silverlight。这是在由于.Net/CLR中的差异而无法引入库时执行的。

诀窍是将该文件作为另一个项目的链接。以下是如何

  1. 在需要代码文件的目标(Silverlight项目)文件夹中,右键单击并选择Add,然后选择Existing Item...shift alt A
  2. 浏览到找到的源文件的位置,并选择/那些文件。
  3. 一旦项目被选中,然后在Add按钮上选择下拉箭头。
  4. 选择Add as link将文件作为链接添加到文件夹中。

一旦完成,只有一个副本,但建在两个不同的地方。

这将提供对文件的访问权限,就好像该文件实际上在项目的文件夹中一样,但是该文件物理驻留elsewhere...and避免了CLR问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/361490

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档