GridView控件:BoundField简单的绑定字段 Container.DisplayIndex
获取Repeater, DataList中的索引号(行号,序号),可以使用Container.ItemIndex来取。
而获取获取Gridview中的索引号,则需要用Container.DataItemIndex来取。
TemplateField 可以添加ItemTemplate绑定一些控件或者进行一些计算
~ 运算符只能为服务器控件识别
URL中编码错乱的时候可以用:
编码 HttpUtility.UrlEncode或Server.UrlEncode 解码 HttpUtility.UrlDecode活Server.UrlEncode
Server.Htmlencode的作用:是把某些代码转换成html格式的
在界面中获取不到控件,主要是因为id值在客户端已经发生了变化,注意:在某些页面中会出乎意料的为原来id、name,可能是隐藏控件没有改变其ID吧
Request.Form("id")一定得到的是以post提交的input裏输入的值
Request.QueryString("id")得到的一定是以get方式提交的值
Request("id") ,get比post优先级高,得到的是get值
asp.net控件的Visible属性设置后,在客户端没有生成该控件,要在客户端能看到应该使用style="display:none"进行设置.
asp.net真好,单击事件还分了客户端/服务器. 解决了我这个纠结的问题.
TextBox_GoTo.Attributes.Add("onkeydown", "SubmitKeyClick('Button_UserSearch');"); //回车触发指定默认按钮的事件
string.split('要依据分割的char字符')参数为单引号
id clientID 区别;
Html控件id、Name区别:
window.location.href="#flagKeyword" 可以导向本页的某个地方#flagKeyword表示某个控件的Name属性,<a> name="PageBottom"></a>一样适合。
自定义控件不能加Title属性
Response.Redirect("")是服务器端跳转,加上this.ClientScript.RegisterStartupScript 是不会执行的。
如果在含有</frame>的窗口中用Response.Redirect("www");只能在子窗口中打开页面。用下面的JS可以达到效果。
response.write ( " <script> self.parent.location.href= 'Index.asp'; </script> ")
打开一个新窗口response.write " <script> window.open( 'index.asp ') </script>
sqlparameter赋值的时候最好不要添加字段大小限制,有些类型参数是必须填写的,image类型的时候费了我很多时间才名称数据源在保存的时候出错。
Asp.net中所有的用户将使用同一个static变量,ViewState对象可以解决这样的问题。写入:ViewState["dbTab"]=dtOrders;//存放DataTable型对象dtOrders
<a >标签在调用javascript时,如果传递参数this,不是传递的控件Obj而是传递的Href的值。千万注意!
event.returnValue=false; 和window.event.returnValue = false;是不同的,注意event.cancelBubble=true;的一些用法
数据库联合查询的时候一定要注意where条件的作用范围,分页的时候要注意排序字段是否唯一的情况,注意三种分页技术的区别和注意事项。
c# 可空类型? 引用类型不能设置成可空类型,只有值类型才可以。而且初始化一定要赋值。HasValue转门判断是否有值。int? a=strInt ?? 100 strInt为空,则a=100
创建数组功能的三种方法:
1:List list = new ArrayList() 2:List<MyUser> listUsers = new List<MyUser>() 3:MyUser[] a=newMyUser[] 4:DataTable aa=new DataTable
c#字典:
1、HashTable 引用的是System.Collections
2、NameValueCollection允许重复。
3、Dictionary<string,object> dic=new Dictionary<string,object>
4、KeyValPair<string,Object>
5、SortedList 集合
Response.End、Response.Redirect 或 Server.Transfer 时出现 ThreadAbortException解决办法:
对于 Response.End,调用 HttpContext.Current.ApplicationInstance.CompleteRequest 方法而不是 Response.End 以跳过 Application_EndRequest 事件的代码执行。
对于 Response.Redirect,请使用重载Response.Redirect(String url, bool endResponse),该重载对endResponse 参数传递false 以取消对Response.End 的内部调用。例如:Response.Redirect ("nextpage.aspx", false);如果使用此替代方法,将执行Response.Redirect 后面的代码。对于Server.Transfer,请改用Server.Execute 方法。
3秒钟的延迟:System.Threading.Thread.Sleep(3000);
location.reload(bool) 和location.replace(URL)区别 后者:不能通过“前进”和“后退”来访问已经被替换的URL,location.replace(location.href)可以解决method="post"的过期问题。
asp.net引用控件两种类型:
自定义控件:<%@ Register Src="../UserCon/foot.ascx"TagName="foot"TagPrefix="uc3" %>
其他dll文件:<%@ Register Assembly="FredCK.FCKeditorV2"Namespace="FredCK.FCKeditorV2"TagPrefix="FCKeditorV2" %>
IFrame 设置成透明色 allowTransparency="true"
jquery获取radio的值: $('input[name="testradio"]:checked').val(); $('input:radio:checked').val(); $('input[@name="testradio"][checked]'); $('input[name="testradio"]').filter(':checked'); $('input[name="testradio"]:eq(1)').val()
JavaScript获取元素方法:1、document.forms[0] 2、document.InputForm 3、document.all 4、document.forms[0].elements
WdatePicker({ minDate: '%y-%M-%d', maxDate: '#F{$dp.$D(\'etime\')||\'2030-12-31\'}', dateFmt: 'yyyy-MM-dd HH:mm:ss', isShowClear: true });
MVC实体映射是,将""解析成了Null解决方案如下:[DisplayFormat(ConvertEmptyStringToNull = false)]
多线程修改界面元素报错解决方案:Control.CheckForIllegalCrossThreadCalls = false;
抽象类的成员可以具有访问级别,而接口的成员全部public级别
抽象类可以包含字段,而接口不可以,
抽象类可以继承接口,而接口不能继承抽象类
抽象类的成员可以具有具体实现,而接口不行
抽象的子类可以选择性实现其基类的抽象方法,而接口的子类必须实现