ASP.net前台绑定用的最多,今天小小总结一下。

1:<%#Eval("")%>

2:<%#Bind("")%>

3:<%=变量%>

1:<%#Eval("数据列")%>  主要用于需要进行更改的数据列

如:我需要将<%#Eval("性别")%> =1 ;将1转换成女。

首先在.CS文件中定义一个方法:

/// <summary>
        /// 转换性别
        /// </summary>
        /// <param name="obj"></param>
        /// <returns></returns>
        public object ChangeSex(object obj)
        {
            if (obj.ToString() == "0")
            {
                return "男";
            }
            else 
            {
                return "女";
            }
        }

<%#ChangeSex(Eval("性别"))%>=女

可以把这些公共的转换方法全部放到一个公共类文件中,进行调用之。调用方法为:

<%#命名空间.公共类名.方法名("列")%>

<%# Common.ChangeSex(Eval("性别"))%>

也可以进行时间截取

如1: <%# Eval("StartTime", "{0:yyyy-MM-dd}")%>

或者2: <%# Convert.ToDateTime(Eval("StartTime").ToString()).ToString("yyyy-MM-dd")%>

2:<%#Bind("数据列")%>

常见于GridView中的不需要进行处理的数据列绑定。

3:<%=变量%>

需要在后台.cs文件中声明一个public的变量

public string userInfo= "数据";

直接调用就OK了

但是我们一般不会这样直接写一个定值;

就需要这样写了:

public string StrOrders
        {
            set
            {
                ViewState["Orders"] = value;
            }
            get
            {
                if (ViewState["Orders"] == null)
                {
                    ViewState["Orders"] = "";
                }
                return ViewState["Orders"].ToString();
            }
        }

------------------------------------------------------------------------------------------------------------------

1)Eval绑定

可以绑定一个单独的字段  Eval("houseID")

也可以绑定一个函数  <%# houseEdit(Eval("infoType"), Eval("houseID"))%>

2)Bind绑定

两者的区别:Eval 方法是静态单向(只读)方法,所以Eval 函数用于单向(只读)绑定,该方法采用数据字段的值作为参数并将其作为字符串返回。Bind 方法支持读/写功能,所以Bind 函数用于双向(可更新)绑定。该方法可以检索数据绑定控件的值并将任何更改提交回数据库。

3)InnerHtml :可以给前台的相关标签如<ul><li><div>等定义id属性和runat属性,然后在后台的代码中绑定id的innerHtml即可。这种方法很便捷,而且能够很好的实现前后台交互,但是注意InnerHtml内容中的一些html标签和属性值中的转义字符。细心是很重要的哦,我就曾经忘记给<a>写结束标签,导致在ie 8里面显示错位。但在其他浏览器中一切正常,一时之间无法排错,还以为是前台设计兼容性的问题那,怎么折腾了半天。

4)在html代码中写入 <%=dll_info.bll.getNewsList.getList() %>

然后在后台书写带返回值的静态方法getList,然后把相关的html代码在后台做绑定,返回到前台来。其实和上面的方法有相似之处,不过这种方法可以很好的实现代码复用。但是不可以有效的和页面上的一些服务器控件交互。

5)还有一种更普遍的就是写JavaScript代码做处理,这里就不举例了。

-----------------------------------------------------------------------------------------------------------------------------------------

<input type="hidden" name="hidFlag"> 
<% if( Request["hidFlag"].ToString() == "1"){%>
<input type="button">
<% }else if(Request["hidFlag"].ToString() =="2"){%>....
<%# DataBinder.Eval(Container.DataItem,"Time").ToString()=="" ? "暂无信息":DataBinder.Eval(Container.DataItem, "Time") %>
该时间字段,不为空,就绑定时间,为空,就显示暂无信息。

C#页面前台绑定数据 <%%><%#%><%=%>的更多相关文章

  1. 14Flutter StatefulWidget有状态组件、页面上绑定数据、改变页面数据、实现计数器功能、动态列表

    /** * Flutter StatefulWidget有状态组件.页面上绑定数据.改变页面数据 * 在Flutter中自定义组件其实就是一个类,这个类需要继承StatelessWidget/Stat ...

  2. Flutter StatefulWidget 有状态组件、页面上绑定数据、改变页面数据

    在 Flutter 中自定义组件其实就是一个类,这个类需要继承 StatelessWidget/StatefulWidget. StatelessWidget 是无状态组件,状态不可变的 widget ...

  3. StatelessWidget 无状态组件 StatefulWidget 有状态组件 页面上绑定数据、改变页面数据

    一.Flutter 中自定义有状态组件 在 Flutter 中自定义组件其实就是一个类,这个类需要继承 StatelessWidget/StatefulWidget. StatelessWidget ...

  4. Java 前台后台数据传递、中文乱码解决方法

    1.向前台传递数据;2.向后台传递数据;3.ajax post 提交数据到服务端时中文乱码解决方法;4.数组类型参数传递; 1.向前台传递数据:1.1 字符串数据传递:  这种方式只是单一的向前台传递 ...

  5. 微信小程序自学第二课:app及页面的生命周期、使用setData绑定数据

    一.App声明周期 1.App() app.js中的App() 函数用来注册一个小程序.接受一个 object 参数,其指定小程序的生命周期函数等. 示例代码: App({ onLaunch: fun ...

  6. ASP.NET前台html页面AJAX提交数据后台ashx页面接收数据

    摘要:最近在写网站,好不容易弄好了需求又变了,没错企业的门户网站硬要弄成后台管理系统一样,没办法作为小工的我只能默默的改.前台HTML页面需要提交数据到后台处理,又不能用form表单,于是乎研究了1天 ...

  7. 在aspx页动态加载ascx页面内容,给GridView控件绑定数据

    在aspx页动态加载ascx页面内容 //加载ascx页面内容Control c1 = this.Page.LoadControl("WebUserControl1.ascx"); ...

  8. ASP.ENT前台更改绑定数据的日期格式

    1.Eval和Bind的区别 绑定表达式 < %# Eval("字段名") %> < %# Bind("字段名") %> 区别 1.ev ...

  9. 【WPF】绑定数据

    WPF绑定数据 模型类(继承 INotifyPropertyChanged,实现属性的变更通知)

随机推荐

  1. POJ 3067 Japan(树状数组)

                                                                                  Japan   Time Limit: 10 ...

  2. mysql保存数据提示1366 Incorrect string value: ‘\xF0\x9F\x98\x8A\xF0\x9F…’ 解决

    在保存数据时我们如果页面编辑与数据库字段编码不一样或字符集超出你了mysql数据库中的字符类型就有可能出一\\xF0\\x9F\\x98\\x8A\\xF0\\x9F提示了,下面我来简单的解决方法. ...

  3. MSP430精准配置高速串口波特率的方法

    引言     在实际项目大批量生产调试设备时,笔者发现同样版本的程序在不同设备上运行时效果不一致,一部分设备串口通信正常,另外一部分串口通信不正常.通过示波器对多个设备的串口波特率及系统时钟频率测试, ...

  4. Mysql 数据库单机多实例部署手记

        最近的研发机器需要部署多个环境,包括数据库.为了管理方便考虑将mysql数据库进行隔离,即采用单机多实例部署的方式.找了会资料发现用的人也不是太多,一般的生产环境为了充分发挥机器性能都是单机单 ...

  5. RabbitMQ 安装

    Install Erlang from the Erlang Solutions repository or Follow the instructions under "Installat ...

  6. Window环境下 Git 下载Android源码

    1.需要的工具 git.vpn代理 2. 设置git代理(Google source 无法下载,git设置代理) git config --global http.proxy "localh ...

  7. C# 给某个方法设定执行超时时间 C#如何控制方法的执行时间,超时则强制退出方法执行 C#函数运行超时则终止执行(任意参数类型及参数个数通用版)

    我自己写的 /// <summary> /// 函数运行超时则终止执行(超时则返回true,否则返回false) /// </summary> /// <typepara ...

  8. [JBoss] - 环境搭建

    安装Java和设置JAVA_HOME等步骤跳过. 1.去官网下载jboss: http://jbossas.jboss.org/downloads/ 这里使用的是7.1.1 final,jboss版本 ...

  9. JavaScript中 Promise的学习以及使用

    今天一个哥们发过来一段js代码,没看懂,就顺便学习了一下,代码如下  Promise.resolve('zhangkai').then(value => {console.log(value)} ...

  10. view抖动效果

    1.使用属性动画 ViewPropertyAnimator.animate(webView).translationX(20).setInterpolator(new CycleInterpolato ...