Linkbutton控件在项目中的简单应用

Linkbutton控件在项目中的简单应用
我们知道,在web控件中有一组用于表单提交和回传的控件,即Button控件。这类控件用于将带有用户输入值的页面提交给服务器,以便用页面中的代码对这些值进行处理。它会在服务器上产生一个Click事件,供用户在代码中使用。

Button控件可分为button控件、LinkButton控件、ImageButton控件三类。它们都用于提交页面。其中ImageButton控件可以显示为一幅图像,并且能够提供用户单击位置的坐标位置。而LinkButton控件则在页面上显示为一个超级链接。

在网上鞋店系统中,我们简单应用了在一个页面内使用多个LinkButton控件执行同一个命令的方法。接下来我们比较详细的介绍一下。
问题一:使用LinkButton是用于链接到各个品牌细节的页面。那么为什么不选用导航HyperLink,而以LinkButton取而代之?

事实上,HyperLink控件仅仅是产生一个有URL指向的超级链接,而LinkButton控件属于Button类控件。它本身支持事件处理,并没有NavigateUrl属性,它的URL链接功能亦主要是由事件处理完成——LinkButton控件支持OnClick、OnCommand等服务器端方法。可归纳如下:

LinkButton的外观和风格与hyperlink相同,但它还有另外二点好处,即:
◆ 点击时能够返回同一个网页。
◆ 便于使用的OnClick方法。
问题二:已经确定使用LinkButton。那么如何在一个页面里对多个LinkButton控件定义方法?要为每一个控件都写同样的方法吗?这显然是不切实际的。那如果只写一个方法,又如何判断是哪个控件触发,服务器向谁提供服务?
在这里我们应用LinkButton的属性CommandName和方法Command来实现。
首先我们先了解一下LinkButton的几个比较重要的属性和方法。
◆ CommandName属性:取得或设定与LinkButton控制项相关的命令名称。这个值与CommandArgument属性一起传给Command处理事件。
◆ CommandArgument属性:包含有关命令的补充资讯,如Ascending排序顺序。和CommandName一起使用。
◆ Click事件:这一事件一般在没有命令名与LinkButton控制关联时(如“提交”按钮)使用。
◆ Command事件:当单击LinkButton 控件时会引发 Command事件。当命令名(如 Sort)与 LinkButton控件关联时,通常使用该事件。这使您可以在一个网页上创建多个 LinkButton控件,并以编程方式确定单击了哪个 LinkButton 控件。

了解LinkButton的属性和方法后。我们可以在程序中给LinkButton的CommandName属性和CommandArgument属性赋值,然后通过Command事件中,即可从CommandEventArgs类中得到数据,进而判断是哪个LinkButton被触发了。其中,CommandEventArgs类存储了和按钮(Button)事件相关的数据,并且可以在事件处理中通过CommandEventArgs类的属性来访问这些数据。

代码:


代码如下:

private void BrandLink_Click(object sender, System.Web.UI.WebControls.CommandEventArgs e)
{
string cmd = e.CommandName;
switch(cmd)
{
case "BrandLink1":
this.Session["fileName"]=BrandLink1.Text;
Server.Transfer("BrandPic.aspx");
break;
case "BrandLink2":
this.Session["fileName"]=BrandLink2.Text;
Server.Transfer ("BrandPic.aspx");
break;
case "BrandLink3":
this.Session["fileName"]=BrandLink3.Text;
Server.Transfer("BrandPic.aspx");
break;
case "BrandLink4":
this.Session["fileName"]=BrandLink4.Text;
Server.Transfer("BrandPic.aspx");
break; case "BrandLink5":
this.Session["fileName"]=BrandLink5.Text;
Server.Transfer("BrandPic.aspx");
break;
case "BrandLink6":
this.Session["fileName"]=BrandLink6.Text;
Server.Transfer("BrandPic.aspx");
break;
case "BrandLink7":
this.Session["fileName"]=BrandLink7.Text;
Server.Transfer("BrandPic.aspx");
break;
default:
this.Session["fileName"]=BrandLink0.Text;
Server.Transfer("Shop.aspx");
break;
}
}

(0)

相关推荐

  • ASP .NET中执行控件(如ImageButton、LinkButton等)命令不刷新页面

    功能需求:在框架中使用ImageButton控件关闭应用程序问询"是否确认退出",用ImageButton的OnClick事件(C#)中调用JavaScript关闭IE. 问题提出:弹出对话框时,就丢失子界面中的内容,即使你不退出系统,也无法返回原状态. 解决方案:不直接使用ImageButton的OnClick事件(C#),而通过ImageButton的Attributes.Add("OnClick","javascript:...")的方式处

  • asp.net下linkbutton的前后台使用方法

    前台: 复制代码 代码如下: <asp:LinkButton runat="server" ID="lbtnUp" CommandArgument='<%#Eval("id") %>' OnClick="lbtnUp_Click">修改</asp:LinkButton> 后台:  复制代码 代码如下: protected void lbtnUp_Click(object sender, Ev

  • Linkbutton控件在项目中的简单应用

    Linkbutton控件在项目中的简单应用 我们知道,在web控件中有一组用于表单提交和回传的控件,即Button控件.这类控件用于将带有用户输入值的页面提交给服务器,以便用页面中的代码对这些值进行处理.它会在服务器上产生一个Click事件,供用户在代码中使用. Button控件可分为button控件.LinkButton控件.ImageButton控件三类.它们都用于提交页面.其中ImageButton控件可以显示为一幅图像,并且能够提供用户单击位置的坐标位置.而LinkButton控件则在页

  • jQuery的时间datetime控件在AngularJs中的使用实例(分享)

    百度一下,自己也想了一下,有一种简单,无脑的方式分享给你: <input ng-model="start" id="start" placeholder="开始日期" style="width:156px;" class="form-control date-picker" data-date-format="yyyy-mm-dd" type="text">

  • Mybatis-plus在项目中的简单应用

    目录 分页插件 逻辑删除 自动填充 乐观锁 多数据源 通用枚举 id生成及主键 查询 LambdaQueryWrapper 本文是一篇随笔,记录项目中应用的一些情景. Mybatis-plus是Spring框架中OOM的一大利器,其简单易用参考官网文档即可很快上手.mp.baomidou.com/guide/ p6spy 执行 SQL 分析打印,只需加入依赖,加入配置文件即可有完美的sql打印.有性能损耗线上不能使用 分页插件 只需注入插件即可,实在太方便了有没有. // 最新版 @Bean p

  • react项目中@路径简单配置指南

    目录 前言 1. 安装craco 2.根路径下创建 craco.config.js 3. 修改package.json文件的script字段 4.使用 补充:React 配置 @ 路径别名 总结 前言 无论是vue还是react开发,我们通常需要引入路径的便捷化配置,通常我们都会约定使用路径@作为根路径地址.如果是个人react开发的@路径简单配置 1. 安装craco yarn add @craco/craco 2.根路径下创建 craco.config.js const path = req

  • ASPX中的用户控件与ASP中的INCLUDE方法对比

    在ASP的年代里,为了避免经常性重复的劳动,对一些功能相似的区域或者代码,经常作成一个文件,然后通过连接(直接连接或者虚拟连接)的方法引入到ASP网页文件之中,对于一个很大的引用了很多ASP文件就相当于一个文件被分成了很多块,彼此文件之间的数据是可以自由共享的(除了函数之中的数据).    ASPX的用户控件就与INCLUDE有很大的不同了,它的最大特点就是在于他是以包装好的对象的形式呈现,通过我们的编程,可以将一个公用的事例抽象出来,将一些功能和方法总结出来,作成相应的函数和属性供外部的事件调

  • C#实现两个richtextbox控件滚动条同步滚动的简单方法

    前言 有时候我们需要实现对照文章等,往往将文本放到两个richtextbox控件中,但是,如果我们需要同步滚动查看,来达到更好的观看效果. 当然,传统的方法重载控件或者自定义控件都可以达到目的,但是对于新手或者想仅仅只用一次这个控件的人来说,是非常麻烦的.所以,接下来我来提供一种简单快捷的方法来实现:richtextbox滚动条同步的功能. 方法如下: 首先,我们在winform窗体创建两个richtextbox控件 下面介绍两个方法,我经常用到 第一个方法,获得当前鼠标所在richtextbo

  • ExtJS 2.2.1的grid控件在ie6中的显示问题

    如下图所示: Menuitem的图标覆盖到了文字上方,这样的显示效果很不爽. <!--[if !vml]--><!--[endif]--> 查看上一版本(2.2)发现并不存在这个问题. 于是,比较2.2.1和2.2两个版本,发现在resources/css /ext-all.css的相关样式上存在差异,如下图: 修改2.2.1版的这两处样式,即可解决这个问题.修改之后,在ie6上能够正常显示,如下图: <!--[if !vml]--><!--[endif]--&g

  • ASP.NET中的Web控件介绍

    目录 一.HTML控件 二.HTML服务器控件 三.Web服务器控件 Web服务器控件和html服务器控件的区别 四.Web用户控件 五.Web自定义控件 1.用户控件和自定义控件的异同 2.实现自定义控件 3.复合自定义控件 1.ASP.NET登录控件的开发 2.ASP.NET登录控件的使用 4.自定义分页控件 一.HTML控件 就是我们通常的说的html语言标记,这些语言标记在已往的静态页面和其他网页里存在,不能在服务器端控制的,只能在客户端通过javascript等程序语言来控制. <in

  • ASP.NET 中 Button、LinkButton和ImageButton 三种控件的使用详解

    ASP.NET Framework包含三个用于向服务器端提交表单的控件:Button.LinkButton和ImageButton.这三个控件拥有同样的功能,但每种控件的外观界面不同. 本文就带着大家学习如何在页面中使用这三种控件.然后,学习如何关联客户端脚本和服务器端Button控件,以及如何使用Button控件把一个表单传到不是当前页的页面.最后,学习如何处理Button控件的Command事件. 一.使用Button控件 Button控件用来向服务器端提交表单的按钮.例如,代码清单1中的页

  • Winform项目中TextBox控件DataBindings属性

    DataBindings属性是很多控件都有的属性,作用有2方面.一方面是用于与数据库的数据进行绑定,进行数据显示.另一方面用于与控件或类的对象进行数据绑定.这里主要关注后者.主要用法是将某个对象的某个属性与指定对象的指定属性进行关联. Label.TextBox等都包含DataBindings属性,其类型为ControlBindingsCollection,是Binding类的集合.Binding类代表某对象属性值和某控件属性值之间的简单绑定.如可以将TextBox的Text属性值绑定到Labe

随机推荐