C#笔记5

33;;Server对象:

 

   public partial class _Default : System.Web.UI.Page

{

    protected void Page_Load(object sender, EventArgs e)

    {

        //Server对象:提供了访问远程服务器信息的方法和属性

        string str = Server.MachineName;//获取主机的名称

        string str1 = Server.MapPath("Default.aspx");//获取该文件所在的物理地址

        Response.Write(str+"<br/>");

        Response.Write(str1 + "<br/>");

        Response.Write(Server.HtmlDecode("<B>21天学通C#</B>")+"<br/>");//HTML代码被执行

        Response.Write(Server.HtmlEncode("<B>21天学通C#<B/>") + "<br/>");//HTML代码不被执行

        Response.Write(Request.ServerVariables["SERVER_NAME"]);//输出域名

        Response.Write("<br/>");

        Response.Write(Server.ScriptTimeout.ToString());//输出脚本超时时间

 

    }

}

34;;Cookie对象:

 

public partial class C67Cookie : System.Web.UI.Page

{

    protected void Page_Load(object sender, EventArgs e)

    {

        //Cookie对象:就是保存用户端硬盘上的一个文本文件,可以存储有关的会话或应用程序的信息,和Session对象有些类似,不同在于:Cookie的信息是保存在服务端上的,而Cookie则是保存在客户端上的。其特点:

        //数据保存在客户端上的;

        //只能保存字符串类型的数据;其他类型则需要转化为字符串类型,Session则可以保存任何类型的数据

        //默认周期,可以手动设置,最大50年

        //Cookie有两种类型:临时性和持久性(这就是如登陆信息保留多天)

        //可通过Cookie的名称不同来区分不同的Cookie,Cookie对象的设置如下:在服务器的Response对象的Cookie集合中增加一个Cookie。Response对象就会把Cookie集合中的所有Cookie信息都发送到客户端中。

         //如果客户端就能用Cookie设置为Cookie禁用,则Sessoin也无法使用。

        //Cookie的操作:

        //

        //1)添加Cookie

        HttpCookie cookie = new HttpCookie("Info");//定义为Cookie对象以及名为Info的项

        DateTime dt = DateTime.Now;

        TimeSpan ts = new TimeSpan(1, 0, 0, 0);//Cookie有效作用时间按

        cookie.Expires = dt.Add(ts);//添加过期时间

        //为Cookie添加属性

        cookie.Values.Add("user", "cxbkkk");//注意这里为values

        cookie.Values.Add("userID","1203");//前面一项为字段,后面一项为其参数

        Response.AppendCookie(cookie);//确定写入Cookie中

        //

        //读取Cookie操作

        if (Request.Cookies["Info"] != null)

        {

            string str = Convert.ToString(Request.Cookies["Info"].Values["user"] + Convert.ToString(Request.Cookies["Info"].Values["userID"]));

            if (str == "")

            {

                Response.Write("Cookie为空");

            }

            else

            {

                Response.Write(str);

            }

        }

        else

        {

            Response.Write("有错误!");

        }

        //

        //修改Cookie

        Response.Cookies["Info"]["user"] = "2";//如有表明Info为Cookie的名称,而user为其字段

        Response.Cookies["Info"].Expires = DateTime.Now.AddDays(1);

        //

        //删除Cookie下的某个属性

        HttpCookie myCookie = Request.Cookies["Info"];

        myCookie.Values.Remove("userID");//删除该属性

        myCookie.Expires = DateTime.Now.AddDays(2);//设置Cookie的过期时间

        Response.Cookies.Add(myCookie);

        //删除所有的Cookie

        int limit = Request.Cookies.Count - 1;

        for(int i=0;i<limit;i++)

        {

            myCookie=Request.Cookies[i];

            myCookie.Expires=DateTime.Now.AddDays(-1);

            Response.Cookies.Add(myCookie);

        }

    }

}

 

35;;Cache对象简介:

 //Cache对象:其实就是一种缓冲技术,通过浏览访问远程站点时,会有一些信息被保存在本地计算机中,这些信息其实就是保存在Cache中,使用C爱车对象保存的信息一般是可以公开的,不可用于保存密码。

        //操作1):添加缓存

        Cache["zhou"]="一个Cache信息";//zhou是变量,而"一个Cache信息"是变量内容;这行可不要,因为下一行其实包含这行的内容

        Cache.Insert("zhou","一个Cache信息");

        string strCache=Cache["zhou"].ToString();

        Response.Write(strCache+"<br/>");

        Cache.Remove("zhou");//删除

36;;

 

public partial class C69_综合练习 : System.Web.UI.Page

{

    protected void Page_Load(object sender, EventArgs e)

    {

        Application["app1"] = "zhouapp1";

        Application["app2"] = "zhouapp2";

        Application["app3"] = "zhouapp3";

        Application["app4"] = "zhouapp4";

        string[] App = new string[Application.Count];

        App = Application.AllKeys;//返回全部Application对象变量名到一个字符串数组中

        for (int i = 0; i < App.Length; i++)

        {

            Response.Write(App[i].ToString()+"</br>");//输出为Application的对象(变量名)

        }

        //结果为:

         //app1

         //app2

         //app3

         //app4

    }

}

37;;//try catch finally中可以有多个catch但是当前面的catch完成之时,则

 

后面的catch则无效。

例如:

namespace ConsoleApplication2

{

    class Program

    {

        static void Main(string[] args)

        {

            try

            {

                string str = null;

                if (str == null)

                {

                    throw new ArgumentException();//在向方法提供的其中

 

一个参数无效时引发的异常。

                }

            }

            catch (ArgumentException e)

            {

                Console.WriteLine("{0}第一个异常", e.Message);

            }

            catch(Exception e)

            {

                Console.WriteLine("{1}第二个异常",e.Message);

            }

            Console.Read();

        }

    }

}

38;;

namespace WindowsFormsApplication1

{

    //作用将菜单栏上的项目提示,输出到状态栏上

    public partial class Form1 : Form

    {

        public Form1()

        {

            InitializeComponent();

        }

        //定义一作用函数

        private void showHelpInfo(object _targe)

        {

            //获取菜单项的引用,比如:“文件”该对象,抽象

            ToolStripMenuItem zhou = (ToolStripMenuItem)_targe;

            //

            //将提示信息输出到状态栏中

            this.toolStripStatusLabel1.Text = zhou.ToolTipText;//这行

 

和下一行的功能是一样的

            //this.statusStrip1.Items[0].Text =

 

zhou.ToolTipText;//ToolTipText是:提示信息

        }

        private void Form1_Load(object sender, EventArgs e)

        {

 

        }

 

        private void 新建ToolStripMenuItem_MouseEnter(object sender,

 

EventArgs e)

        {

            this.showHelpInfo(sender);

        }

 

        private void 打开ToolStripMenuItem_MouseEnter(object sender,

 

EventArgs e)

        {

            this.showHelpInfo(sender);

        }

    }

}

 

39;;控件使用:

namespace WindowsFormsApplication1

{

    public partial class C91 : Form

    {

        public C91()

        {

            InitializeComponent();

        }

        //dateTimePicker的使用:时间控件

        private void dateTimePicker1_CloseUp(object sender, EventArgs

 

e)//当日期控件下拉菜单收起时的作用

        {

            //string str = dateTimePicker1.Text;//显示年月日

            string str = dateTimePicker1.Value.ToString();//显示年月日

 

时分秒

            label2.Text = str;

        }

        //listbox列表控件的使用

        //selectmode选择模式:单行 多行

        private void C91_Load(object sender, EventArgs e)

        {

            listBox1.Items.Add("篮球");

            listBox1.Items.Add("足球");

            listBox1.Items.Add("排球");

            //TreeView控件:

            //属性:Nodes里加跟或子节点

            //      ShowLine显示节点间连线

            //      ShowPlusMinus:显示加减号

            //      ExpandAll();全部展开

            TreeNode root1 = treeView1.Nodes.Add("公司部门");//增加根

 

节点1

            TreeNode root2 = treeView1.Nodes.Add("学校部门");//增加根

 

节点2

            root1.Nodes.Add("商务部 ");//为根节点1加三个子节点

            root1.Nodes.Add("技术部");

            root1.Nodes.Add("市场部");

            root2.Nodes.Add("组织部");

            root2.Nodes.Add("科研处");

            root2.Nodes.Add("教务处");

            treeView1.ShowLines = true;

            treeView1.ShowPlusMinus = true;

            treeView1.ExpandAll();

        }

        private void button1_Click(object sender, EventArgs e)

        {

            string str = listBox1.SelectedItem.ToString();

            listBox2.Items.Add(str);

 

        }

 

        private void button2_Click(object sender, EventArgs e)

        {

            string str = listBox2.SelectedItem.ToString();

            listBox1.Items.Add(str);

        }

        //进度条的使用:控件的最大最小值分别由:Maximum和Minmum决定,

 

而其增长值是由Value决定,一小格由Step(步长)决定,下面是和Timer一起使

 

        private void timer1_Tick(object sender, EventArgs e)

        {

            progressBar1.Value++;

            if (progressBar1.Value > 99)

            {

                progressBar1.Value = 99;

            }

        }

    }

}

 

       //制作类似于QQ最小化的托盘控件Notify(最小项)+ContextMenu(菜

 

单项)

        private void Form1_SizeChanged(object sender, EventArgs e)

        {

            if(this.WindowState==FormWindowState.Minimized)

            {

                this.Hide();

                this.notifyIcon1.Visible = true;//隐身当前窗体页面变为

 

状态栏上图标

            }

        }

 

        private void notifyIcon1_Click(object sender, EventArgs e)

        {

            //this.Visible = true;

            //this.WindowState = FormWindowState.Normal;

            //contextMenuStrip1.Show();

        }

 

        private void notifyIcon1_MouseClick(object sender,

 

MouseEventArgs e)

        {

            contextMenuStrip1.Show();//显示ContextMenu内Items

        }

//需设置Form窗体的ContextScript的属性为:contextMenuStrip1

 

//容器类

1)FlowLayoutPanel:流布局控件(复杂窗体)

属性:

       FlowDirection:布局方向(左右或上下)

       WrapContents:设置是换行还是剪裁

       FlowBreak:是否在流方向上布局并换行:是其内的子控件的属性:摆

 

脱FlowDirection的约束

2)分隔条控件SplitContainer:可以看做是由一个可移动的拆粉条和其分隔的两

 

个面板组成,并可以内含该SplitContainter控件

属性:

   分隔部分方向的设置:

      Orientation:方向设置:水平或垂直

       IsSplitterFixed:是否将设置两面板的大小不变 =lock

3)TabControl:选项卡控件:显示抖个选项卡

   更多选项可以右击“添加选项卡”

 

//菜单和工具栏

1)快捷键菜单:ContextMenuStrip:右击弹出式菜单,需要在所需右击的控件

 

的ContextMenuScript的属性上设置为:ContextMenuScript属性

2)主菜单:MenuStrip

3)状态栏:StatusStrip

4)工具栏:ToolStrip

40;;//组件:实际上是一种封装了的对象

1)帮助文档组件HelpProvide:打开帮助文档,或指定到特点文档

private void Form1_Load(object sender, EventArgs e)

        {

            //1)帮助文档组件HelpProvide:打开帮助文档,或指定到特点文

 

            //   属性:tag和HelpNamespace(用于指定HelpProvide控件关联

 

的帮助文件名称)

            //   方法:GetHelpString:设置弹出窗口内容

            //     SetHelpKeyword:设置控件的相关联字符串

            //     SetHelpString:设置控件的相连字符串

            //     SetshowHelp:设置是否显示控件的帮助信息

            string strPath = Application.StartupPath.Substring(0,

 

Application.StartupPath.Substring(0,

 

Application.StartupPath.LastIndexOf("//")).LastIndexOf("//"));//取得本

 

应用程序可执行文件路径名不包括文件名

            strPath += @"/help.html";

            helpProvider1.HelpNamespace = strPath;//将路径赋控件的Help

 

用于制定于该控件相关的帮助文件信息

            helpProvider1.SetShowHelp(this, true);//设置是否为可见

            this.HelpButton = true;

            this.MaximizeBox = false;

            this.MinimizeBox = false;

        }

 

2)ServerController组件:是将操作请求传递给服务管理器、而你不是传给服

 

务本身。例如:

 

3)

4)

5)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值