DataBinder所有用法-
生活随笔
收集整理的這篇文章主要介紹了
DataBinder所有用法-
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
-------DataBinder所有用法------------------
?
<%#?Bind("Subject")?%>?//綁定字段<%#?Container.DataItemIndex?+?1%>?//實現自動編號
<%#?DataBinder.Eval(Container.DataItem,?"[n]")?%>?
通常使用的方法
<%#?DataBinder.Eval(Container.DataItem,?"ColumnName")?%>?
<%#?DataBinder.Eval(Container.DataItem,?"ColumnName",?null)?%>?
<%#?DataBinder.Eval(Container,?"DataItem.ColumnName",?null)?%>?
其他用法
<%#?((DataRowView)Container.DataItem)["ColumnName"]?%>?
<%#?((DataRowView)Container.DataItem).Row["ColumnName"]?%>?
<%#?((DataRowView)Container.DataItem)["adtitle"]?%>?
<%#?((DataRowView)Container.DataItem)[n]?%>?
<%#?((DbDataRecord)Container.DataItem)[0]?%>?
<%#?(((自定義類型)Container.DataItem)).屬性.ToString()?%>//如果屬性為字符串類型就不用ToString()了
DataBinder.Eval用法范例
<%#?DataBinder.Eval(Container.DataItem,?"IntegerValue",?"{0:c}")?%>
格式化字符串參數是可選的。如果忽略參數,DataBinder.Eval?返回對象類型的值,
//顯示二位小數
<%#?DataBinder.Eval(Container.DataItem,?"UnitPrice",?"${0:F2}")?%>?
//{0:G}代表顯示True或False
<ItemTemplate>
?<asp:Image?Width="12"?Height="12"?Border="0"?runat="server"
?AlternateText='<%#?DataBinder.Eval(Container.DataItem,?"Discontinued",?"{0:G}")?%>'
?ImageUrl='<%#?DataBinder.Eval(Container.DataItem,?"Discontinued",?"~/images/{0:G}.gif")?%>'?/>
</ItemTemplate>
//轉換類型
((string)DataBinder.Eval(Container,?"DataItem.P_SHIP_TIME_SBM8")).Substring(4,4)
{0:d}?日期只顯示年月日
{0:yyyy-mm-dd}?按格式顯示年月日
{0:c}?貨幣樣式
<%#Container.DataItem("price","{0:¥#,##0.00}")%>
<%#?DataBinder.Eval(Container.DataItem,"Company_Ureg_Date","{0:yyyy-M-d}")%>
Specifier?Type?????Format???Output?(Passed?Double?1.42)??Output?(Passed?Int?-12400)?
c??Currency????????{0:c}?????$1.42?????-$12,400?
d??Decimal?????????{0:d}????System.FormatException??-12400?
e??Scientific??????{0:e}????1.420000e+000????-1.240000e+004?
f??Fixed?point?????{0:f}??1.42????-12400.00?
g??General?????????{0:g}??1.42?????-12400?
n??Number?with?commas?for?thousands??{0:n}??1.42?????-12,400?
r??Round?trippable????{0:r}??1.42?????System.FormatException?
x??Hexadecimal????{0:x4}??System.FormatException???cf90?
{0:d}?日期只顯示年月日
{0:yyyy-mm-dd}?按格式顯示年月日
樣式取決于?Web.config?中的設置
{0:c}??或?{0:£0,000.00}?貨幣樣式??標準英國貨幣樣式
<system.web>
??????<globalization?requestEncoding="utf-8"?responseEncoding="utf-8"?culture="en-US"?uiCulture="en-US"?/>
</system.web>
顯示為?£3,000.10
{0:c}??或?string.Format("{0:C}",?price);?中國貨幣樣式
<system.web>
??????<globalization?requestEncoding="utf-8"?responseEncoding="utf-8"?culture="zh-cn"?uiCulture="zh-cn"?/>
</system.web>
顯示為?¥3,000.10
{0:c}??或?string.Format("{0:C}",?price);?美國貨幣樣式
<system.web>
??????<globalization?requestEncoding="utf-8"?responseEncoding="utf-8"?/>
</system.web>
顯示為?$3,000.10
DataBinder.Eval(Container.DataItem,"Name")和Container.DataItem("Name")有什么區別?
DataBinder 是System.Web里面的一個靜態類,它提供了Eval方法用于簡化數據綁定表達式的編寫,但是它使用的方式是通過Reflection等開銷比較大 的方法來達到易用性,因此其性能并不是最好的。而Container則根本不是任何一個靜態的對象或方法,它是ASP.NET頁面編譯器在數據綁定事件處 理程序內部聲明的局部變量,其類型是可以進行數據綁定的控件的數據容器類型(如在Repeater內部的數據綁定容器叫RepeaterItem),在這 些容器類中基本都有DataItem屬性,因此你可以寫Container.DataItem,這個屬性返回的是你正在被綁定的數據源中的那個數據項。如 果你的數據源是DataTable,則這個數據項的類型實際是DataRowView。
轉載于:https://www.cnblogs.com/nianshi/archive/2009/06/10/1500231.html
總結
以上是生活随笔為你收集整理的DataBinder所有用法-的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何在编译内核时添加缺少的固件(以int
- 下一篇: java glassfish_java