c#常用编程方法 (一)

1.将字符串NoList以','作为标记转换为字符串数组,用string[] arrList=NoList.Split(',')
2.关掉打开的当前窗口:
public static void CloseWindow(Page page)
{
  string strScript="/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","");
6.Session能够进行页面之间的传值
 如test1.aspx的页面类中付值Session["DirectoryName"] = aa[0].ToString();当页面有test1.aspx跳转到test2.aspx后在test2.cs中可以通过这样的方法取值
 if(Session[DirectoryName]!=Null)
 {
  string temp=Session[DirectoryName];
 }
7.另外一种页面间传值的方法是在test1.cs中 this.Response.Redirect("test2.aspx?id=6");
 然后再test2.cs中通过这样的方法来取得该id
if (this.Request.QueryString["id"] == null)
 {
   string ID=this.Request.QueryString["AutoNo"].ToString().Trim();
}6,7两种方法在编程中会经常用到的
8. 在同一个页面之间不同函数间传值时ViewState的用处也很大
  付值:ViewState["OperationType"]=1;
  调用:
   if (ViewState["OperationType"] != null)
      {
         return Convert.ToString(ViewState["OperationType"]);
      }
9.对于用户从界面输入的信息,要注意进行字符校验,然后进行程序处理
一般采用这种方式
if (!this.CheckInput())
        {
           //处理过程
        }
10.类型转换:int.Parse  Convert.ToString()  Convert.ToDateTime等等
11.编写程序时注意随时在不太好理解的地方加上注释,对一些常用的函数要做成公用的函数以便调用
12.为界面按钮添加事件
 this.BtnDel.Attributes.Add("onclick","return confirm('确认删除?')");
13.有时候希望数据直接绑定到调用时定义的表dtTable,则采用out来进行数据回传,调用函数:GetDataTableFromID(id,out dtTable)
   被调用函数:GetDataTableFromID(int id, out DataTable drReturn)
14.设置字符串形式如果data1为string型,data2位int型,data3为DateTime型,则按如下方式来写
string.Format("输出的三个数字为:'{0}',{1},'{2}'",data1,data2,data3),后面的数据data1,data2,data3将会代替{}中的内容输出。
15.设置一个实体类的属性:
 private int m_intAutoID;
public int AutoID
{
  get
 {
   return m_intAutoID;
 }
  set
 {
  m_intAutoID=value;
 }
}
16.ArrayList的使用方法:
ArrayList 是一种动态数组,下面给出一个简单的例子:
ArrayList List=new ArrayList();
for(int i=0;i<10;i++)
List.Add(i);
List.RemoveAt(5);
for(int i=0;i<3;i++)
List.Add(i+20);
Int32[] values=(Int32[])List.ToArray(typeof(Int32));
17.GridView中队LinkButton模版列的操作:
前台界面

 
 
  
   查看
   删除
  

 

后台代码的处理部分
protected void drgDisplay_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
    {
        switch (e.CommandName)
        {
            case "View":
                //处理部分
                break;
            case "Erase":
                //处理部分
                break;
        }
    }
18.获得一个随机数:
   string temp;
   temp=new Random().Next(10000,99999).ToString();
19.在html界面定义一个javascript函数,然后在服务器端调用该函数
  html界面:
  )
   也可以专门做一个提示函数放到公用方法中,然后在前台进行调用就可以了
   函数:  (假设这个函数在Share类中)
   public static void PromptMessage(Page page,string strMessage)
  {
   StringBuilder sb=new StringBuilder("");
   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="

"
                 +"
"
                 +"
"
                 +"
"
                 +"
"
                 +"
时间:
";
22.在服务器后台写script脚本,打开一个新页面
   Share.OpenWindow(this,"ExportToExcel.aspx?DepartmentNo="+DepartNo)
   在Share中的OpenWindow函数:
    public static void OpenWindow(Page page,string strUrl)
{
 string strScript;
 strScript="";
 if (!page.ClientScript.IsStartupScriptRegistered("windowOpen"))
            page.ClientScript.RegisterStartupScript(page.GetType(), "windowOpen", strScript);
}
23.GridView的数据绑定
 前台html:
  
                   
                       
                   

                   
                   
               

               
                   
                       
                   

                   
                   
               

               
                   
                       
                   

                   
                   
               

对于Text='<%# Eval("Title")这种格式,当指定GridView绑定的数据源后,会自动在界面上绑定出Title字段的数据
对于Text='<%# htTypeId[Eval("HotLineTypeID")] %>'则需要在后台程序中添加这样的程序
public Hashtable htTypeId
    {

        get
        {

            if (ViewState["htTypeId"] != null)
            {

                return (Hashtable)ViewState["htTypeId"];
            }
            else
            {

                return null;
            }
        }
        set
        {

            ViewState["htTypeId"] = value;
        }
    }
将返回的值进行绑定
24.关于用户控件
   在页面中重复出现较多的模块,我们可以把它做成用户控件,比如网站的头尾模块。这样我们在每个页面需要添加头尾模块时只需要
 将这个控件拖入网页中即可,用户控件以.ascx结尾。
25.自定义控件,对于一些功能模块,如果使用频繁,我们也可以把它做成一个控件,比如日期控件(在论坛上已提供下载)需要使用时直接从面板中拖入即可,一般是建一个类库,
调试完成后,编译成.dll文件,在工具箱中点击选择项,将该dll文件添加进取,就可以像普通TextBox一样去使用它了。
26.前台用脚本编写dropDownList的onchange事件,后台编写控件的触发脚本
 drpType.Attributes.Add("onchange",changeType();");
 前台:
 

你可能感兴趣的:(c#软件开发)