.net的commandname领悟

.net的commandname领悟有时候需要几个按纽调用同一模块,实现相似(而非相同)的功能,需要用到按纽的CommandName行为 实现步骤如下:1、VS2005新建一个网站项目,拖入两个web控件Button控件,分别设置CommandName为btn1,btn2,btn3,btn4;再分别设置CommandArgument为Asc,Desc,Asc,Desc。等会看到,这两个参数都会随着Button_Comma

有时候需要几个按纽调用同一模块,实现相似(而非相同)的功能,需要用到按纽的CommandName行为
 
实现步骤如下:
1、VS2005新建一个网站项目,拖入两个web控件Button控件,分别设置CommandName为btn1,btn2,btn3,btn4;再分别设置CommandArgument为Asc,Desc,Asc,Desc。等会看到,这两个参数都会随着Button_Command事件传入。再分别设置text属性为数字升序,数字降序,字母升序,字母降序。
 
所得代码如下:
<body>

 
 
 
<form id=”form1″ runat=”server” method=”post” action=”Default.aspx”>

 
 
 
 
 
 
 
<asp:Button ID=”Button1″ runat=”server” CommandName=”btn1″ Text=”Button1″ />

 
 
 
 
 
 
 
<asp:Button ID=”Button2″ runat=”server” CommandName=”btn2″ Text=”Button2″ />
 
 
 
 
 
 
 
<asp:Button ID=”Button3″ runat=”server” CommandName=”btn3″ Text=”Button3″ />
 
 
 
 
 
 
 
<asp:Button ID=”Button4″ runat=”server” CommandName=”btn4″ Text=”Button4″ />

 
 
 
</form>

</body>
 
2、选中Button1按纽,在属性面板中选择“事件”,在“操作”下双击“Command”栏,进入代码页,并输入以下代码:(把Button1_Command改为Button_Command)
    protected void Button_Command(object sender, CommandEventArgs e)
    {
        switch (e.CommandName)
        {
            case "btn1":
                Response.Write("数字:");
                ShowNumbers(e.CommandArgument);
                break;
            case "btn2":
                Response.Write("数字:");
                ShowNumbers(e.CommandArgument);
                break;
            case "btn3":
                Response.Write("字母");
                ShowLetters(e.CommandArgument);
                break;
            case "btn4":
                Response.Write("字母");
                ShowLetters(e.CommandArgument);
                break;
        }
    }
 
    private void ShowNumbers(object commandArgument)
    {
        if (commandArgument.ToString() == "Asc")
        {
            Response.Write("升序:12345");
        }
        else if (commandArgument.ToString() == "Desc")
        {
            Response.Write("降序:54321");
        }
    } 
 
   private void ShowLetters(object commandArgument)
    {
        if (commandArgument.ToString() == "Asc")
        {
            Response.Write("ABCDE");
        }
        else if (commandArgument.ToString() == "Desc")
        {
            Response.Write("EDCBA");
        }
    }

3、回到前台编辑页面,分别选中Button1和Button2,将二者Command事件设置为Button_Command
 
4、运行结果:点Button1显示“btn1:12345”,点Button4显示“btn2:EDCBA”。
 
5、总结:在Button_Command事件中传递的e参数,实际上是一个参数组,它包含e.CommandName(字符类型)和e.CommandArgument(object类型)。根据这两个参数,很轻易的把一组按纽分成四组功能:数字升序、数字降序、字母升序、字母降序。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:http://bianchenghao.cn/35348.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注