小编Eri*_*rix的帖子

将组件添加到Swf库的正确方法是什么?

在开发Flash项目的过程中,我遇到了很多困扰我的问题.它看起来像这样:

TypeError: Error #1009: Cannot access a property or method of a null object reference.
at fl.containers::BaseScrollPane/fl.containers:BaseScrollPane::drawBackground()
at fl.controls::TileList/fl.controls:TileList::draw()
at fl.core::UIComponent/::callLaterDispatcher()
TypeError: Error #2007: Parameter child must be non-null.
at flash.display::DisplayObjectContainer/addChildAt()
at fl.controls::BaseButton/fl.controls:BaseButton::drawBackground()
at fl.controls::BaseButton/fl.controls:BaseButton::draw()
at fl.core::UIComponent/drawNow()
at fl.controls::ScrollBar/fl.controls:ScrollBar::draw()
at fl.core::UIComponent/::callLaterDispatcher() 
Run Code Online (Sandbox Code Playgroud)

现在,就我而言,这个错误源于在代码中初始化组件时尚未明确添加到CS4中fla的组件库中.在过去,我尝试在代码中动态创建ScrollPanes时遇到了这个问题.我通过将ScrollPane组件添加到Main.fla的库中来解决它.这似乎有一段时间了.

现在,我正在尝试使用AstraFlash AutoComplete框.我已将适当的fla文件导入CS4,并将一个AutoComplete框放入我的Swf中.一切都很好,但加载Swf时会出现上述错误.我的想法是AutoComplete框试图创建ScrollPane作为其功能的一部分.好的,我理解这一点,所以我将ScrollPane组件添加到库中,结果相同.

通常我会搞乱库组件/设置,直到我摆脱错误,但我厌倦了碰到这个,我想知道解决问题的正确方法.所以,我有几个问题:

  • 您何时需要将组件添加到Fla的库而不是仅仅在代码中创建组件?

  • 您需要将哪些Flas添加到?只是一个使用它?或者Fla的所有父母呢?

  • 假设Autocomplete组件需要ScrollPane组件.添加单个组件时,为什么不识别此依赖关系?为什么我必须明确添加它?

  • 将组件添加到库并将其添加到库的"Component Assets"文件夹之间有什么区别?这个文件夹的用途是什么?

我真的需要这个AutoComplete组件才能工作.假设AS3代码是正确的,并且我仍然遇到上述错误,您认为哪些设置可能不正确?出于沮丧,我尝试将每个可能的组件添加到库,以及库的组件资源文件夹只是为了有一个起点,但我仍然得到错误.

任何帮助表示赞赏.

flash adobe actionscript-3 flash-cs4 flash-v3-components

5
推荐指数
1
解决办法
1216
查看次数

是否可以通过在ASP.NET中模拟Windows身份验证用户从Active Directory检索数据?

我一直在努力解决这个问题,而且我已经阅读了标准谷歌留言板答案中的一些相互矛盾的信息.

我要做的是从活动目录中检索域用户(即当前登录用户的)电子邮件地址.我的ASP.NET 4网站是为Windows身份验证设置的,一切正常,直到活动目录调用.

当我执行以下操作时,我在search.findAll()行上得到一个COMException.异常消息是"发生操作错误"(非常有用的消息呃?)(为了便于阅读,删除了代码)

WindowsIdentity winId = (WindowsIdentity)HttpContext.Current.User.Identity;
WindowsImpersonationContext wic = null;

wic = winId.Impersonate();
using (DirectoryEntry root = new DirectoryEntry(rootQuery))
{
      String userQuery = GetUserQuery();
      DirectorySearcher searcher = new DirectorySearcher(root);
      searcher.SearchScope = SearchScope.Subtree;
      searcher.Filter = userQuery;

      SearchResultCollection results = searcher.FindAll();
      return (results[0].Properties["proxyaddresses"][0]).ToString();
}
Run Code Online (Sandbox Code Playgroud)

所以基本上我想模仿登录用户进行通话.请注意,如果我将凭据直接传递给DirectoryEntry构造函数,此代码将按预期工作.此外,如果我摆脱模拟代码并在Web配置中设置应用程序范围的模拟,我会收到相同的错误.

所以我想我的问题,在我浪费任何时间之前,这是否可能?或者您是否必须指定用户名和密码才能访问AD?

在我的开发盒上BTW我正在运行IIS5,但可能会部署到IIS6.

编辑:

按照要求:

rootQuery = @"LDAP://{0}.com/DC={0}, DC=com";
userQuery = @"(&(samAccountName={0})(objectCategory=person)(objectClass=user))";
Run Code Online (Sandbox Code Playgroud)

使用适当的域和用户指定.

.net asp.net .net-4.0 active-directory windows-authentication

5
推荐指数
1
解决办法
3446
查看次数

通过不同字段获取资源的RESTful URL

简单的问题我无法找到答案..

如果我有一个REST Web服务,并且我的设计没有使用url参数,我如何指定两个不同的键来返回相同的资源?

我希望的例子(并且已经实施)

/Person/{ID}
Run Code Online (Sandbox Code Playgroud)

它按预期返回一个人.

现在我也想要

/Person/{Name}
Run Code Online (Sandbox Code Playgroud)

它按名称返回一个人.

这是正确的RESTful格式吗?或者它是这样的:

/Person/Name/{Name}
Run Code Online (Sandbox Code Playgroud)

rest

5
推荐指数
1
解决办法
2995
查看次数

Source <Out,Mat>的类型参数是什么意思?

我正在尝试理解这里指定的Akka流的Source类型.

不幸的是,我发现的文档和示例并没有解释每个类型参数的实际含义.我猜这Out是源在物化时发出的类型.那是对的吗?什么是其他类型参数Mat

scala akka akka-stream

5
推荐指数
1
解决办法
233
查看次数

为什么我不能通过将指针传递给函数来初始化数组?

我知道这有一个非常简单的解释,但是我已经被一段时间不必使用指针所困扰了.

为什么我不能在c ++中做这样的事情

int* b;
foo(b);
Run Code Online (Sandbox Code Playgroud)

并通过...初始化数组

void Something::foo(int* a)
{
  a = new int[4];
}
Run Code Online (Sandbox Code Playgroud)

在调用foo(b)之后,b仍为null.为什么是这样?

c++ pointers

4
推荐指数
2
解决办法
1853
查看次数

ASP.NET中是否只有一些初始化区域只运行一次?

我有一段代码,我想在我的网站首次加载时运行一次.它基本上是另一个模块的静态初始化.

当网站首次提供给客户端时,是否有一些事件可以挂钩?它甚至不需要每次会话,只需首次加载到任何客户端.

我正在使用vs2010,.net 4.0,asp.net 4.0

asp.net

4
推荐指数
1
解决办法
1470
查看次数

将约束类型传递给方法

这里有几个类似的问题,但似乎没有一个问题能够完全回答我的问题.

我想创建一个采用Enum Type的方法,并为UI生成ListItem的List.像这样的签名的东西可以工作:

public static List<ListItem> ListItemListFromEnum(Type t)
{
    ...        
}
Run Code Online (Sandbox Code Playgroud)

但我宁愿不接受任何类型(t必须是Enum类型)所以我可以做这样的事情:

public static List<ListItem> ListItemListFromEnum(Enum e)
{
    Type t = e.GetType();
}
Run Code Online (Sandbox Code Playgroud)

并只是将正确类型的枚举传递给方法.这样可以正常工作,但我真的想要一个Type参数(如我的第一个例子),但强制它是一个Enum类型.

这可能吗?有没有办法用泛型做到这一点?谢谢

c# generics types .net-4.0

4
推荐指数
1
解决办法
440
查看次数

如何/为什么SyncRoot隐藏在队列<T>上?

困惑,可能会遗漏一些简单的东西..

我有

var q = new Queue<object>();
lock (q.SyncRoot)
{
    ...
}
Run Code Online (Sandbox Code Playgroud)

我明白了

Queue<T> does not provide a defintion for SyncRoot blah blah...
Run Code Online (Sandbox Code Playgroud)

但是,Queue<T>实现ICollection其定义SyncRoot为公共财产.

所以,首先,为什么这是隐藏的.其次,如何隐藏正在实现的接口的属性?

c# interface c#-4.0

4
推荐指数
1
解决办法
792
查看次数

调用方法的模式,它采用传递对象的最派生形式

当我遇到这种情况并意识到我不确定最佳解决方案是什么时,我感到很惊讶.

说我有以下三种类型:

class A { }
class B : A { }
class C : A { }
Run Code Online (Sandbox Code Playgroud)

以下三种方法:

DoSomething(A a){ }
DoSomething(B b){ }
DoSomething(C c){ }
Run Code Online (Sandbox Code Playgroud)

我有一个List<A>包含B和C类型的对象

我想这样做:

foreach(A a in list) { DoSomething(a) }
Run Code Online (Sandbox Code Playgroud)

并让它调用与底层类型最匹配的方法,但当然这将始终调用 DoSomething(A a)

我不希望有一堆类型检查来获得正确的方法调用,我不想在类A,B或C中添加任何内容.

可能吗?

c#

4
推荐指数
1
解决办法
85
查看次数

从 WPF 应用程序引用 Silverlight 类库时出错

我有一个 WPF 应用程序和一个 Silverlight 应用程序。它们都用于显示地图并共享一些相同的功能。

为了保持 DRY,我创建了一个 Silverlight 类库项目。我从 Silverlight 和 WPF 中引用了这个。它包含一些在两个项目中都很有用的实用方法。例如,我有这个方法:

public static void CenterText(TextBlock name, Polygon poly)
Run Code Online (Sandbox Code Playgroud)

Silverlight 项目对此没有任何问题。但是,从我的 WPF 应用程序调用它时出现以下错误:

类型“System.Windows.Shapes.Polygon”是在未引用的程序集中定义的。您必须添加对程序集“System.Windows, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e”的引用

但是,我在文件顶部有这一行:

using System.Windows.Shapes;
Run Code Online (Sandbox Code Playgroud)

所以 WPF 可以很好地看到 Polygon 类。我的猜测是 Silverlight 类库使用的框架版本与 WPF 项目使用的版本不兼容。

所以问题是,我是否坚持在我的 WPF 应用程序中重写完全相同的代码,或者有什么方法可以在两者之间共享?

谢谢!

wpf .net-4.0 silverlight-4.0

3
推荐指数
1
解决办法
4421
查看次数