ASP.NET数据绑定的记忆碎片实现代码

ASP.NET数据绑定的一般情况

1、<%= C#代码 %> //调用代码隐藏页面的方法、属性、或者字段
这里一般是调用属性和方法比较多,要注意调用的属性、方法或者字段的作用域,必须是可以在ASPX页面可以访问到的。

代码示例(ASPX):<%=Property%>

在(CS)是: public string Property{ get { return "This is a Property";} }
属性是这样使用的,方法和字段的使用类似,也是这样实现的。

2、<%#数据绑定表达式%>//是在列表控件里面使用的

使用方式一:<%# Eval("FirstName")%>
使用方式二:<%# DataBinder.Eval(Container.DataItem, "SecondName")%>
下面附上我调试的源码,可以复制过去看看

在ASPX页面:

代码如下:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="DataBindEx._Default" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Collections.Generic" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form runat="server">
<div>
<%=Property%>
<br />
<asp:TextBox ID="TextBox1" Text="This is TextBox of serverClient " runat="server"></asp:TextBox>
<br />
<%=Method()%>
<br />
<br />
<asp:Label ID="Label1" runat="server"><%=TextBox1.Text %></asp:Label>
<br />
<%=(Property + " " + Method())%>
</div>
<div>
<asp:Repeater ID="Repeater1" runat="server" OnItemDataBound="RptAllOnItemDataBound">
<HeaderTemplate>
This is Header<br />
</HeaderTemplate>
<ItemTemplate>
FirstName:<%# Eval("FirstName")%>
SecondName:<%# DataBinder.Eval(Container.DataItem, "SecondName")%>
FullName:<%# (Container.DataItem as DataBindEx.Person).FullName%>
<asp:Literal ID="Others" runat="server"></asp:Literal>
<br />
</ItemTemplate>
<FooterTemplate>
This is footer<br />
</FooterTemplate>
</asp:Repeater>
</div>
</form>
</body>
</html>

在CS页面:


代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.MobileControls;
namespace DataBindEx
{
public class Person
{
public string FirstName
{
get;
set;
}
public string SecondName
{
get;
set;
}
public string FullName
{
get
{
return FirstName + SecondName;
}
}
}
public partial class _Default : System.Web.UI.Page
{
public string Property
{
get
{
return "This is a Property";
}
}
protected void Page_Load(object sender, EventArgs e)
{
string str = TextBox1.Text;
Person per = new Person();
per.FirstName= "刘";
per.SecondName= "明丰";
Person per1 = new Person();
per1.FirstName = "林";
per1.SecondName = "旺";
Person per2 = new Person();
per2.FirstName = "陈";
per2.SecondName = "仁峰";
List<Person> list = new List<Person>();
list.Add(per);
list.Add(per1);
list.Add(per2);
Repeater1.DataSource = list;
Repeater1.DataBind();
}
protected void RptAllOnItemDataBound(object sender, RepeaterItemEventArgs e)
{
Person pe = (Person)e.Item.DataItem;
Literal lit = e.Item.FindControl("Others") as Literal;
if (pe !=null)
switch (pe.FirstName)
{
case "刘":
lit.Text = "刘喜欢打球";
break;
case "林":
lit.Text = "林喜欢下棋";
break;
default:
lit.Text = "陈喜欢c#";
break;
}
}
protected string Method()
{
return "This is a Method";
}
}
}

(0)

相关推荐

  • 深入理解Asp.net中DataBinder.Eval的用法总结

    <%# Bind("Subject") %> //绑定字段<%# Container.DataItemIndex + 1%> //实现自动编号<%# DataBinder.Eval(Container.DataItem, "[n]") %>通常使用的方法(这三个性能最好)<%# DataBinder.Eval(Container.DataItem, "ColumnName") %><%# Da

  • asp.net数据绑定时动态改变值的代码

    --------后台-------------------- 复制代码 代码如下: protected string GetStr(string boo) { if ("False".Equals(boo)) { return "未完成"; } else { return "已完成"; } } --------前台------------------- 复制代码 代码如下: <%# GetStr(Eval("IsDoneByCom

  • asp.net数据绑定DataBind使用方法

    简单介绍 DataBindDataBind包括三大方法,Repeater,DataList和DataGrid,这些控件都位于 System.Web.UI.WebControls 命名空间中,从 WebControl 基类中直接或间接派生出来的.这些方法都是通过HTML来显示数据的内容.建立DataBind所有的DataBind都应该用DataBind() 函数来建立(注意如果你用的是C#,请注意大小写)数据绑定,是整个页面PAGE和所有控件的一个方法,也就是说,他可以被所有的控件使用,你建立数据

  • 浅析DataBinder.Eval和Eval的区别

    ASP.NET 2.0改善了模板中的数据绑定操作,把v1.x中的数据绑定语法DataBinder.Eval(Container.DataItem, fieldname)简化为Eval(fieldname).Eval方法与DataBinder.Eval一样可以接受一个可选的格式化字符串参数.缩短的Eval语法与DataBinder.Eval的不同点在于,Eval会根据最近的容器对象(例如DataListItem)的DataItem属性来自动地解析字段,而DataBinder.Eval需要使用参数来

  • ASP.NET数据绑定的记忆碎片实现代码

    ASP.NET数据绑定的一般情况 1.<%= C#代码 %> //调用代码隐藏页面的方法.属性.或者字段 这里一般是调用属性和方法比较多,要注意调用的属性.方法或者字段的作用域,必须是可以在ASPX页面可以访问到的. 代码示例(ASPX):<%=Property%> 在(CS)是: public string Property{ get { return "This is a Property";} } 属性是这样使用的,方法和字段的使用类似,也是这样实现的.

  • 详解ASP.NET数据绑定操作中Repeater控件的用法

    一.绑定控件之Repeater .NET封装了多种数据绑定控件,诸如GridView.DataList等但该篇文章将会从Repeater入手,因为Repeater只提供了基本的数据绑定模板,没有内置其它分页等功能,所以它是最原始的数据绑定控件,只要能够熟练运用Repeater控件其它的绑定控件也就很简单了. 1.Repeater简介 Repeater 控件是基本模板化数据列表. 它不像GridView控件一样能够可视化的设计格式或样式,因此开发时在控件模板中必须显式声明所有格式.格式和样式标记.

  • ASP.NET数据绑定之GridView控件

    GridView 是 DataGrid的后继控件,在.net framework 2 中,虽然还存在DataGrid,但是GridView已经走上了历史的前台,取代DataGrid的趋势已是势不挡.  作用:其功能是在web页面中显示数据源中的数据.GridView和DataGrid功能相似,都是在web页面中显示数据源中的数据,将数据源中的一行数据,也就是一条记录,显示为在web页面上输出表格中的一行.     在此GirdView的详细属性和事件我不再阐述.下面我只是简单介绍一下GirdVi

  • ASP.NET数据绑定GridView控件使用技巧

    不得不说GridView控件的功能确实很强大,一个简简单单的控件就可以把数据管理的很美.在这两天做的任务中碰到的一些GridView控件中遇到的问题进行总结: ①:在GridView控件中随意显示数据库中的信息: GridView控件中有一个AutoGenerateColumns属性,它的作用就是控制GridView控件是否在运行的时候自动生成相关联的列,一般情况下把这个属性设置成为false.因为我们需要的是一个DIY的GridView控件.然后点击右上角的箭头,选择编辑列添加一个BoundF

  • Asp.Net类型转换类(通用类)代码分享

    废话不多说了,直接给大家贴代码了,具体代码如下所述: /// <summary> /// 类型转换类 /// 处理数据库获取字段为空的情况 /// </summary> public static class DBConvert { #region------------------ToInt32类型转换------------------ /// <summary> /// 读取数据库中字符串并转换成Int32 /// 为空时返回0 /// </summary&

  • asp.net导出EXCEL的功能代码

    复制代码 代码如下: //由gridviw导出为Excel public static void ToExcel(System.Web.UI.Control ctl) { HttpContext.Current.Response.AppendHeader("Content-Disposition", "attachment;filename=Excel.xls"); HttpContext.Current.Response.Charset = "UTF-8

  • asp连接access、sql数据库代码及数据库操作代码

    1. ASP与Access数据库连接: 复制代码 代码如下: dim strConn dim conn strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+Server.mappath("data/isp.mdb")+";Persist Security Info=False" set conn = Server.CreateObject("ADODB.Connection

  • asp连接SQL和Access数据代码(asp里的随机函数)

    asp连接sql 第一种写法: 复制代码 代码如下: MM_conn_STRING = "Driver={SQL Server};server=(local);uid=sa;pwd=;database=infs;" Set conn = Server.Createobject("ADODB.Connection") conn.open MM_conn_STRING SET RS=SERVER.CreateObject("ADOBD.recordset&qu

  • asp.net 数据绑定的实例代码

    复制代码 代码如下: public partial class _Default : System.Web.UI.Page{    protected string title="大家好";            //前台代码<title><%#title %></title>    protected void Page_Load(object sender, EventArgs e)    {        DataSet ds = new Da

随机推荐