C# 为什么会出现这种错误&引用;类型或命名空间名称';c';找不到(是否缺少using指令或程序集引用?);
找不到类型或命名空间名称“c”(是否缺少using指令或程序集引用?) 我确实添加了这个名称空间“usingsystem.Web.UI.WebControls;”为什么会出现这个错误C# 为什么会出现这种错误&引用;类型或命名空间名称';c';找不到(是否缺少using指令或程序集引用?);,c#,asp.net,C#,Asp.net,找不到类型或命名空间名称“c”(是否缺少using指令或程序集引用?) 我确实添加了这个名称空间“usingsystem.Web.UI.WebControls;”为什么会出现这个错误 protected void DoSomething(Control control)( { foreach (Control c in control.Controls) { if(typeof(c).Equals(Telerik.Web.UI
protected void DoSomething(Control control)(
{
foreach (Control c in control.Controls)
{
if(typeof(c).Equals(Telerik.Web.UI.RadEditor))
{
Telerik.Web.UI.RadEditor rad = c as Telerik.Web.UI.RadEditor;
rad.CssClass = "MyStyle";
label1.Visible = true; label1.Text = "dhchk";
// control.CssFiles.Add("~/styles/myStyle.css");
}
else
{
DoSomething(c);
}
}
}
typeof(x)期望x是一个类型,而不是一个对象
用这个代替
if(c is Telerik.Web.UI.RadEditor)
typeof的正确用法是
if (c.GetType().Equals(typeof(Telerik.Web.UI.RadEditor))
typeof(x)期望x是一个类型,而不是一个对象
用这个代替
if(c is Telerik.Web.UI.RadEditor)
typeof的正确用法是
if (c.GetType().Equals(typeof(Telerik.Web.UI.RadEditor))
如果它是一个类型,而不是变量,则使用的是
c
is
更改此项:
if (typeof(c).Equals(Telerik.Web.UI.RadEditor))
进入:
或者简单地说:
if (c is Telerik.Web.UI.RadEditor)
如果它是一个类型,而不是变量,则使用的是
c
is
更改此项:
if (typeof(c).Equals(Telerik.Web.UI.RadEditor))
进入:
或者简单地说:
if (c is Telerik.Web.UI.RadEditor)
需要为typeof(…)
运算符指定一个类型名,即编译时已知的类型名。我想你的意思是:
但是,最好写下:
RadEditor editor = c as Telerik.Web.UI.RadEditor;
if (editor != null)
{
rad.CssClass = "MyStyle";
label1.Visible = true;
label1.Text = "dhchk";
}
这还可以处理c
是RadEditor
子类的一个实例的情况,我认为这应该遵循相同的路径
通过使用as
一次而不是is
然后as
或cast,您只需执行一次动态类型检查-通常更整洁。需要为typeof(…)
操作符指定一个类型名,即编译时已知的类型名。我想你的意思是:
但是,最好写下:
RadEditor editor = c as Telerik.Web.UI.RadEditor;
if (editor != null)
{
rad.CssClass = "MyStyle";
label1.Visible = true;
label1.Text = "dhchk";
}
这还可以处理c
是RadEditor
子类的一个实例的情况,我认为这应该遵循相同的路径
通过使用
as
一次而不是is
然后as
或cast,您只需执行一次动态类型检查-通常更整洁。thnx最后一次有效。.现在,当我尝试以这种方式向RadEditor添加CSS类时,出现了另一个错误“rad.cscsclasses.Add(../Skins/CustomSkin/Editor.CustomSkin.CSS”)..错误是“与'Telerik.Web.StronglyTypedStateManagedCollection.Add(Telerik.Web.UI.editorcsClass)'匹配的最佳重载方法具有一些无效参数”我需要向每个radEditor控件添加4个CSS类…这不是正确的方法吗?我做错了什么???@Serenity:cssclass.add方法用于向CSS类下拉列表添加单个类名。您想使用CssFiles.Add
方法来代替。thnx上一个方法有效..现在,当我尝试以“rad.cssclass.Add(“../Skins/CustomSkin/Editor.CustomSkin.CSS”);”的方式向RadEditor添加CSS类时,出现了另一个错误。错误是“Telerik.Web.StronglyTypedStateManagedCollection.Add”的最佳重载方法匹配(Telerik.Web.UI.editorcsclass)“具有一些无效参数”我需要向每个radEditor控件添加4个CSS类…这不是正确的方法吗?我做错了什么???@Serenity:cssclass.add方法用于向CSS类下拉列表添加单个类名称。您想使用CssFiles.add方法。如何向radEditor控件添加多个CSS类…我需要添加4tried,但它不起作用…”rad.CssClasses.add(../Skins/CustomSkin/Editor.CustomSkin.css”);rad.CssClasses.add(../Skins/CustomSkin/ToolBar.CustomSkin.css”)嗯,我需要在单独的问题中问这个问题吗?那个类型错误已经解决了..坚持这个now@Serenity:我想作为一个单独的问题问这个问题,是的-它听起来不相关,实际上更多的是与Telerik控件有关,而不是C本身。+1用于使用as
,而不是执行多个运行时类型查询。使用是
a然后,作为
是没有意义的,但是如果你已经验证了类型或者要求某个东西是一个特定的类型,那么就使用cast。我如何向RadEditor控件添加多个css类。我需要添加4个,但它不起作用..“rad.csclasses.add(../Skins/CustomSkin/Editor.CustomSkin.css”);rad.csclasses.add(“../Skins/CustomSkin/ToolBar.CustomSkin.css“;”嗯,我需要在单独的问题中问这个问题吗?那个类型错误已经解决了..坚持这个now@Serenity:我想作为一个单独的问题问这个问题,是的-它听起来不相关,实际上更多的是与Telerik控件有关,而不是C本身。+1用于使用as
,而不是执行多个运行时类型查询。使用是
and-thenas
没有任何意义,不过如果您已经验证了类型或要求某个特定类型,只需使用强制转换即可。