c#常用编程方法.docx

上传人:b****7 文档编号:9633905 上传时间:2023-02-05 格式:DOCX 页数:27 大小:25.83KB
下载 相关 举报
c#常用编程方法.docx_第1页
第1页 / 共27页
c#常用编程方法.docx_第2页
第2页 / 共27页
c#常用编程方法.docx_第3页
第3页 / 共27页
c#常用编程方法.docx_第4页
第4页 / 共27页
c#常用编程方法.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

c#常用编程方法.docx

《c#常用编程方法.docx》由会员分享,可在线阅读,更多相关《c#常用编程方法.docx(27页珍藏版)》请在冰豆网上搜索。

c#常用编程方法.docx

c#常用编程方法

1.将字符串NoList以','作为标记转换为字符串数组,用string[]arrList=NoList.Split(',')

2.关掉打开的当前窗口:

publicstaticvoidCloseWindow(Pagepage)

{

stringstrScript="\n"+

"window.close();\n"+

"\n";

page.Response.Write(strScript);

}

3.判断字符串是否为空:

string.IsNullOrEmpty(this.str);

4.ViewState用法

if(ViewState["OperationType"]!

=null)

{

return(string)ViewState["OperationType"];

}

5.this.Page.RegisterStartupScript("note","window.alert('保存成功!

');window.document.URL='Supervise.aspx';");

6.Session能够进行页面之间的传值

如test1.aspx的页面类中付值Session["DirectoryName"]=aa[0].ToString();当页面有test1.aspx跳转到test2.aspx后在test2.cs中可以通过这样的方法取值

if(Session[DirectoryName]!

=Null)

{

stringtemp=Session[DirectoryName];

}

7.另外一种页面间传值的方法是在test1.cs中this.Response.Redirect("test2.aspx?

id=6");

然后再test2.cs中通过这样的方法来取得该id

if(this.Request.QueryString["id"]==null)

{

stringID=this.Request.QueryString["AutoNo"].ToString().Trim();

}6,7两种方法在编程中会经常用到的

8.在同一个页面之间不同函数间传值时ViewState的用处也很大

付值:

ViewState["OperationType"]=1;

调用:

if(ViewState["OperationType"]!

=null)

{

returnConvert.ToString(ViewState["OperationType"]);

}

9.对于用户从界面输入的信息,要注意进行字符校验,然后进行程序处理

一般采用这种方式

if(!

this.CheckInput())

{

//处理过程

}

10.类型转换:

int.ParseConvert.ToString()Convert.ToDateTime等等

11.编写程序时注意随时在不太好理解的地方加上注释,对一些常用的函数要做成公用的函数以便调用

12.为界面按钮添加事件

this.BtnDel.Attributes.Add("onclick","returnconfirm('确认删除?

')");

13.有时候希望数据直接绑定到调用时定义的表dtTable,则采用out来进行数据回传,调用函数:

GetDataTableFromID(id,outdtTable)

被调用函数:

GetDataTableFromID(intid,outDataTabledrReturn)

14.设置字符串形式如果data1为string型,data2位int型,data3为DateTime型,则按如下方式来写

string.Format("输出的三个数字为:

'{0}',{1},'{2}'",data1,data2,data3),后面的数据data1,data2,data3将会代替{}中的内容输出。

15.设置一个实体类的属性:

privateintm_intAutoID;

publicintAutoID

{

get

{

returnm_intAutoID;

}

set

{

m_intAutoID=value;

}

}

16.ArrayList的使用方法:

ArrayList是一种动态数组,下面给出一个简单的例子:

ArrayListList=newArrayList();

for(inti=0;i<10;i++)

List.Add(i);

List.RemoveAt(5);

for(inti=0;i<3;i++)

List.Add(i+20);

Int32[]values=(Int32[])List.ToArray(typeof(Int32));

17.GridView中队LinkButton模版列的操作:

前台界面

TemplateColumnHeaderText="操作">

LinkButtonid="lnbView"CommandName="View"CausesValidation="False"Runat="server">查看

LinkButton>

LinkButtonid="lnbErase"CommandName="Erase"CausesValidation="False"Runat="server">删除

LinkButton>

TemplateColumn>

后台代码的处理部分

protectedvoiddrgDisplay_ItemCommand(objectsource,System.Web.UI.WebControls.DataGridCommandEventArgse)

{

switch(e.CommandName)

{

case"View":

//处理部分

break;

case"Erase":

//处理部分

break;

}

}

18.获得一个随机数:

stringtemp;

temp=newRandom().Next(10000,99999).ToString();

19.在html界面定义一个javascript函数,然后在服务器端调用该函数

html界面:

functioncwin(strDepart)

{

vara=strDepart;

varmikecatstr=window.ShowModalDialog('../../UserControl/UcSelectPerson.aspx',a,'dialogHeight:

500px;dialogWidth:

585px');

//处理部分

}

后台调用代码:

stringa="343";

this.ImaBu.Attributes.Add("onclick","cwin("+a+")");

20.一般在后台弹出提示框的写法:

Response.write(

也可以专门做一个提示函数放到公用方法中,然后在前台进行调用就可以了

函数:

(假设这个函数在Share类中)

publicstaticvoidPromptMessage(Pagepage,stringstrMessage)

{

StringBuildersb=newStringBuilder("window.");

sb.Append("alert('");

sb.Append(StringUtility.HtmlMsgStringFormatFix(strMessage));

sb.Append("')");

sb.Append("");

if(!

page.ClientScript.IsClientScriptBlockRegistered("display"))

{

page.ClientScript.RegisterStartupScript(page.GetType(),"display",sb.ToString());

}

}

后台程序调用

Share.PromptMessage(this.Page,"联系人手机号不能为空!

");

21.用javascript脚本输出界面的一个单元格,其中有小时,分钟的选择的两个下拉选择框

tableDate=mainIFrame.document.createElement("TABLE");

_TR=tableDate.insertRow();

_TD=_TR.insertCell();

_TD.height=1;

_TD.bgColor="black";

_TR=tableDate.insertRow();

_TD=_TR.insertCell();

_TD.innerHTML="

0pxsolid;width:

100%'>"

+"时间:

"

+"点"

+""

+"分"

+"";

22.在服务器后台写script脚本,打开一个新页面

Share.OpenWindow(this,"ExportToExcel.aspx?

DepartmentNo="+DepartNo)

在Share中的OpenWindow函数:

publicstaticvoidOpenWindow(Pagepage,stringstrUrl)

{

stringstrScript;

strScript="";

strScript+="varintHeight=600;";

strScript+="varintWidth=window.screen.width-150;";

strScript+="varstrFeature='height='+intHeight+',width='+intWidth+',left=80,toolbar=no,status=yes,menubar=yes,location=yes,resizable=yes,scrollbars=yes';";

strUrl="window.open('"+strUrl+"','_blank',strFeature,true);";

strScript+=strUrl;

strScript+="";

if(!

page.ClientScript.IsStartupScriptRegistered("windowOpen"))

page.ClientScript.RegisterStartupScript(page.GetType(),"windowOpen",strScript);

}

23.GridView的数据绑定

前台html:

TemplateFieldHeaderText="标题">

HyperLinkID="HyperLinkTitle"runat="server"Text='<%#Eval("Title")%>'CssClass="link3">

HyperLink>

TemplateField>

TemplateFieldHeaderText="时间">

LabelID="Label1"runat="server"Text='<%#Eval("AddTime","{0:

yyyy-MM-ddHH:

mm}")%>'>

Label>

TemplateField>

TemplateFieldHeaderText="信息类别">

LabelID="Label2"runat="server"Text='<%#htTypeId[Eval("HotLineTypeID")]%>'>

Label>

TemplateField>

对于Text='<%#Eval("Title")这种格式,当指定GridView绑定的数据源后,会自动在界面上绑定出Title字段的数据

对于Text='<%#htTypeId[Eval("HotLineTypeID")]%>'则需要在后台程序中添加这样的程序

publicHashtablehtTypeId

{

get

{

if(ViewState["htTypeId"]!

=null)

{

return(Hashtable)ViewState["htTypeId"];

}

else

{

returnnull;

}

}

set

{

ViewState["htTypeId"]=value;

}

}

将返回的值进行绑定

24.关于用户控件

在页面中重复出现较多的模块,我们可以把它做成用户控件,比如网站的头尾模块。

这样我们在每个页面需要添加头尾模块时只需要

将这个控件拖入网页中即可,用户控件以.ascx结尾。

25.自定义控件,对于一些功能模块,如果使用频繁,我们也可以把它做成一个控件,比如日期控件(在论坛上已提供下载)需要使用时直接从面板中拖入即可,一般是建一个类库,

调试完成后,编译成.dll文件,在工具箱中点击选择项,将该dll文件添加进取,就可以像普通TextBox一样去使用它了。

26.前台用脚本编写dropDownList的onchange事件,后台编写控件的触发脚本

drpType.Attributes.Add("onchange",changeType();");

前台:

functionchangeType()

{

if(document.all.drpYwlb.value!

="")

{

if(document.all.drpYwlb.value!

="Select")

{

eval("document.all.querycondition"+document.all.drpYwlb.value+".style.display=''")

}

}

else

{

for(iii=1;iii<5;iii++)

{

eval("document.all.querycondition"+iii+".style.display='none'");

}

}

}

27.GridView中如何对其所绑定的模版列数据进行操作

前台:

TemplateFieldHeaderText="序号">

LabelID="lblIndex"runat="server">Label

Label>

TemplateField>

咱们在后台对lblIndex这个Label进行处理

protectedvoidgvPeople_RowDataBound(objectsender,GridViewRowEventArge)

{

if(e.Row.RowType==DataControlRowType.DataRow)

{

LabellblIndex;

lblIndex=(Label)e.Row.Cell[1].FindControl("lblIndex");

lblIndex.Text=Convert.ToString

(2);

}

}

28.有些数据字段在程序控制中一般以1,2,3,4..等等进行判断,但是为了增强程序的易读性,需要使用enum将其所代表的意思表达出来,

可以单独做一个类来实现这个功能

如:

namespaceenumDemo

{

publicenumRightEnum

{

//组,用户,角色维护

GroupEdit=1,

//功能项维护

FunctionEdit=2,

//权限点维护

RightEdit=3,

}

}

引用时,直接用RightEnum.GroupEdit即代表1,这样会使程序更清晰。

29.弹出页返回时对上级页界面控件的编程

dialogArguments.document.all.txtOriginRecord.value="none";

30.在单元格中检索按钮的onmouseoveronmouseou

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1