我正在尝试在友好的'ScriptManager'类中调用我的旧'RegisterClientScriptBlock'。
它对我的CompositeControl不起作用?我在普通用户控件(ascx)上使用它。
Visual Studio根本不接受我输入'ScriptManager'或者我得到“当前上下文中不存在名称'ScriptManager'”如果我这样做并尝试编译。出了什么问题 - 我确实有对System.Web.UI的引用,我甚至得到了resharper来帮助我添加它(和using语句) - 如果它只是在那里。
好的,现在非常简单,逻辑正在下降,我只需要知道......
有什么想法吗?
我得到了带有SP1的Visual Studio 2008。
编辑:不起作用的CompositeControl实际上是一个简单的类库,而不是ascx文件自然是Web应用程序的一部分。我知道这可能会导致问题,因为我必须以某种方式设置对页面的引用 - 我试着查看ClientScriptManager但它的构造函数是内部的,表明它在ScriptManager的内部使用 - 但它也暗示可能有一个入口来自一个类库(没有对Page对象的编译时引用)
答案 0 :(得分:1)
ClientScriptManager cs = Page.ClientScript;
cs.RegisterClientScriptBlock(GetType(), "GenerateMatrixText", script, true);
终于找到了它:)