一个关于自定义控件弱弱的问题(高手救救我啊)

问题描述

会提示元素“DatePicker”不是已知元素,原因可能是网站中存在编译错误下面是代码:<%@ControlLanguage="c#"ClassName="DateandTimePicker"%><%@RegisterTagPrefix="Club"Namespace="ClubSite"%><divclass="controlblock"><table><tr><td>Date:</td><td><Club:DatePickerid="dp1"runat="server"/><!--日期下拉列表--></td><td>Time:</td><td><Club:TimePickerID="tp1"runat="server"/><!--时间下拉列表--></td></tr></table></div><scriptrunat="server">Datepicker的源代码:usingSystem.Web;usingSystem.Web.UI;usingSystem.Web.UI.WebControls;usingSystem.Text;namespaceClubSite{publicstaticclasscommonScript{publicstaticvoidWritePopupRoutines(System.Web.UI.PagePage){StringBuildersb=newStringBuilder();sb=newStringBuilder();sb.AppendLine("var__popup_panel;");sb.AppendLine("function__popup_clear(){");sb.AppendLine("if(__popup_panel!=null)");sb.AppendLine("{");sb.AppendLine("document.getElementById(__popup_panel).style.display='none';");sb.AppendLine("__popup_panel=null;");sb.AppendLine("}");sb.AppendLine("}");sb.AppendLine("function__popup_losefocus(panel)");sb.AppendLine("{");sb.AppendLine("if(!panel.contains(document.activeElement))");sb.AppendLine("{");sb.AppendLine("panel.style.display='none';");sb.AppendLine("}");sb.AppendLine("}");Page.ClientScript.RegisterClientScriptBlock(Page.GetType(),"PopupRoutines",sb.ToString(),true);}}publicclassDatePicker:WebControl,INamingContainer{privateCalendar_innerCal;privateTextBox_innerTbx;privatestringerrorText=null;privatebool_panelvisible=false;publicDatePicker():base(HtmlTextWriterTag.Div){}publicSystem.DateTimeSelectedDate{get{EnsureChildControls();System.DateTimed=System.DateTime.Now;try{d=System.DateTime.Parse(_innerTbx.Text);errorText=null;_innerCal.SelectedDate=d;}catch{errorText="Dateneedstobespecifiedasmm/dd/yyyy";}returnd;}set{EnsureChildControls();_innerCal.SelectedDate=value;_innerTbx.Text=value.ToShortDateString();}}protectedoverridevoidCreateChildControls(){base.CreateChildControls();_innerTbx=newTextBox();this.Controls.Add(_innerTbx);_innerCal=newCalendar();_innerCal.SelectionChanged+=newSystem.EventHandler(_innerCal_SelectionChanged);_innerCal.VisibleMonthChanged+=newMonthChangedEventHandler(_innerCal_MonthChanged);Controls.Add(_innerCal);}protectedoverrideSystem.Web.UI.HtmlTextWriterTagTagKey{get{returnHtmlTextWriterTag.Div;}}protectedoverridevoidAddAttributesToRender(System.Web.UI.HtmlTextWriterwriter){if(this.Width.IsEmpty){this.Width=newUnit(150);}base.AddAttributesToRender(writer);}protectedoverridevoidRenderContents(System.Web.UI.HtmlTextWriterwriter){_innerTbx.Attributes.Add("Align","AbsMiddle");_innerTbx.Width=newUnit(100);_innerTbx.RenderControl(writer);stringinnerid=this.UniqueID+"_inner";writer.AddAttribute("Align","AbsMiddle");writer.AddAttribute("src","images/dropdownbtn.gif");writer.AddAttribute("onClick","__datepicker_showpopup('"+innerid+"')");writer.RenderBeginTag(HtmlTextWriterTag.Img);writer.RenderEndTag();if(errorText!=null){writer.AddStyleAttribute("color","red");writer.AddStyleAttribute("display","block");writer.RenderBeginTag(HtmlTextWriterTag.Span);writer.Write(errorText);writer.RenderEndTag();}writer.AddStyleAttribute("position","relative");writer.RenderBeginTag(HtmlTextWriterTag.Div);writer.AddStyleAttribute("position","absolute");writer.AddStyleAttribute("left","0px");writer.AddStyleAttribute("top","0px");writer.AddStyleAttribute("z-index","100");stringpanelvisible=_panelvisible?"block":panelvisible="none";writer.AddStyleAttribute("display",panelvisible);writer.AddStyleAttribute("background-color","white");writer.AddAttribute("id",innerid);writer.AddAttribute("onfocusout","__popup_losefocus(this)");writer.RenderBeginTag(HtmlTextWriterTag.Div);_innerCal.RenderControl(writer);writer.RenderEndTag();writer.RenderEndTag();}protectedoverridevoidOnPreRender(System.EventArgse){base.OnPreRender(e);commonScript.WritePopupRoutines(Page);StringBuildersb=newStringBuilder();if(_panelvisible){sb.AppendLine("__popup_panel='"+this.UniqueID+"_inner';");}sb.AppendLine("function__datepicker_showpopup(name)");sb.AppendLine("{");sb.AppendLine("if(__popup_panel!=null)");sb.AppendLine("{");sb.AppendLine("document.getElementById(__popup_panel).style.display='none';");sb.AppendLine("}");sb.AppendLine("__popup_panel=name;");sb.AppendLine("varpanel=document.getElementById(__popup_panel);");sb.AppendLine("panel.style.display='block';");sb.AppendLine("varlinks=panel.getElementsByTagName('A');");sb.AppendLine("links[0].focus();");sb.AppendLine("window.event.cancelBubble=true;");sb.AppendLine("}");Page.ClientScript.RegisterClientScriptBlock(this.GetType(),"popup",sb.ToString(),true);Page.MaintainScrollPositionOnPostBack=true;}privatevoid_innerCal_SelectionChanged(objectsender,System.EventArgse){EnsureChildControls();_innerTbx.Text=_innerCal.SelectedDate.ToShortDateString();}privatevoid_innerCal_MonthChanged(objectsender,MonthChangedEventArgse){_panelvisible=true;}}}

解决方案

解决方案二:
添加引用后重新生成一下

时间: 2024-08-02 13:48:22

一个关于自定义控件弱弱的问题(高手救救我啊)的相关文章

c语言-java小宝宝请教一个弱弱的问题。还请留步指教。

问题描述 java小宝宝请教一个弱弱的问题.还请留步指教. 各位高人,本人新手一枚.自己写的十六进制转化为十进制.有一点瑕疵就是,当提示输入一个数的时候,如果我什么都不输入,直接按enter(回车),程序就会陷入死循环,不能动了,只能Ctrl +c退出,搞不懂为什么,作为处女座,很难受. 自己琢磨了好久没琢磨出来.还请大大们指教指教,不胜感激. import java.util.Scanner; public class Test{ public static void main(String

if else if-关于if-else if。菜菜鸟弱弱的提问

问题描述 关于if-else if.菜菜鸟弱弱的提问 Console.WriteLine("你的年龄为?"); int age = Convert.ToInt32(Console.ReadLine()); if (age >= 18) { Console.WriteLine("你可以查看有关内容."); } else if (age < 10) { Console.WriteLine("抱歉,你不能查看相关内容."); } else

国美电器正式进驻当当网:电商之间的“弱弱联合”

昨天凌晨,在当当网首页的商品分类最后一栏,出现了"国美"字样的入口.这意味着传言一个多月的"国美想当当"合作正式落定. 记者昨天登录当当网的"国美"专属频道页面发现,其售卖的品类.价格均与http://www.aliyun.com/zixun/aggregation/30829.html">国美网上商城几乎相同,包括了家电数码手机等产品品类. 当当网CEO李国庆更是透露,当当网的"国美"在今年的销售目标是80亿

关于南京外包公司的面试题目……偶要去笔试啊,弱弱的

问题描述 下周就要去面试了,说了是先来个笔试再面试,弱弱的问问--笔试题一般都是些什么题目啊?分别是文思.上海易保和软通动力--大家给点意见啊 解决方案 解决方案二:网上找一下呗解决方案三:基础题编程题智力题就这

弱弱地问一下:opencv都可以调用普通的免驱笔记本外接摄像头吗?

问题描述 弱弱地问一下:opencv都可以调用普通的免驱笔记本外接摄像头吗? 如题~直接cvCaptureFromCAM....巴拉巴拉就可以直接调用了吗(想买个笔记本外接摄像头) 解决方案 看看这个能不能用到,http://blog.sina.com.cn/s/blog_4a189c920101cm8v.html

弱弱地问一下:可以用电脑opencv编程,用手机做摄像头来识别物体吗?

问题描述 弱弱地问一下:可以用电脑opencv编程,用手机做摄像头来识别物体吗? 大致有哪几模块或步骤(手机仅仅做摄像头,需要在安卓手机上编程吗)?谢谢大神们 解决方案 参考:http://jingyan.baidu.com/article/1876c852d587a9890b1376a3.html

unicode编码-在三星S4行开发Android应用遇到一个Unicode编码的问题,请高手赐教,非常感谢

问题描述 在三星S4行开发Android应用遇到一个Unicode编码的问题,请高手赐教,非常感谢 从服务器端获取unicode字节数组,打印出来为003300300030003300300031,从打印来看应该小端UTF-16格式,对应字符串300301,但是用String(byteArrayUTF-16LE"")还是encodingUtls.getString(byteArrayUTF-16LE"")都是乱码,请问这个问题怎么解决,谢谢~~

请求-在使用jqueryui的tab方法是遇到一个问题,不知道为什么,求高手解答

问题描述 在使用jqueryui的tab方法是遇到一个问题,不知道为什么,求高手解答 在使用jqueryui的tab方法是遇到一个问题,用如下方式代开tab页面,该tab页面里面的iframe子页面请求了两次,不知道为什么,求高手解答使用下面这个方法打开tab页面的时候使用httpwatch查看请求链接是,可以发现iframe嵌入的页面,例如index.jsp,会请求两次,求高手解答为什么,以及怎么修改,谢谢 function addNewTab(tabTitle frameId url ref

弱弱问下:asp:Button如何设置背景。

问题描述 弱弱问下:asp:Button如何设置背景.(C#) 解决方案 解决方案二:你用CSS写个你想要设置的背景,,然后在asp:Button的CssClass属性里面把你这css的名字填进去就可以了.解决方案三:好像有时候背景色要先设置透明解决方案四:换成ImageButton解决方案五:<buttonid="btn"name="mybtn"style="background:******"></button>这样就