它在我的方法中的if块中未执行语句
母版页:-
页面加载事件:-
Control c = new Control();
DoSomething(c);
我的方法:
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;
label1.Visible = true; label1.Text = "dhchk";
rad.CssFiles.Add("~/styles/myStyle.css");
rad.CssFiles.Add("~/styles/myStyle2.css");
rad.CssFiles.Add("~/styles/myStyle3.css");
}
else
{
DoSomething(c);
}
}
}
我的内容页面:
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<telerik:RadEditor ID="Editor1" EnableEmbeddedBaseStylesheet="false" EnableEmbeddedSkins=false runat="server">
</telerik:RadEditor>
<telerik:RadEditor ID="Editor2" EnableEmbeddedBaseStylesheet="false" EnableEmbeddedSkins=false runat="server">
</telerik:RadEditor>
[编辑]调试时确定。我先单击“ c”,然后单击“快速监视...”,它显示“名称“ c”在当前上下文中不存在”(?!?!),怎么办?
最佳答案
好吧,母版页首先呈现,因此您将无法从母版页访问任何内容页面控件。您可以使用事件来实现此目的,并将控件从内容传递到母版
udpate:
同样,从母版页访问用户控件是整个母版->内容设计中的缺陷。我能想到的最接近的事情是添加静态函数
public static void AddDesign(RadEditor obj)
{
...
}
然后从用户控件的Page_Load调用函数
MASTER_PAGE_CLASS_NAME.AddDesign(RadEditor1);
关于c# - 从母版页后面的代码访问RadEditor控件…它在那里时找不到任何radEditor控件。,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4084849/