Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

¤£¥Î datagrid ·s¼W­×§ï§R°£¤ÎÅã¥Ü¸ê®Æ

0 views
Skip to first unread message

½Ð¦U¦ì±M®aÀ°¦£

unread,
Dec 10, 2003, 2:16:12 AM12/10/03
to
¦p¦ó¤£¥Î datagrid ·s¼W­×§ï§R°£¤ÎÅã¥Ü¸ê®Æ

¥xÆW·L³n§Þ³N¤ä´©³B

unread,
Dec 10, 2003, 10:34:10 AM12/10/03
to
¨Ï¥Î ASP.NET ¸ê®ÆÃ´µ²¡A±z´N¥i¥H±N¥ô¦ó¦øªA¾¹±±¨î¶µÃ´µ²¦Ü²
©öÄݩʡB¶°¦X¡B¹Bºâ¦¡¤Î/©Î¤èªk¡C ¨Ï¥Î¸ê®ÆÃ´µ²¡A¥i¥HÅý±z§óÆF
¬¡¦a¹B¥Î¸ê®Æ®wªº¸ê®Æ©Î¨ä¥L¤èªk¡C

¥»¤å±N°Q½×¤U¦C¸ê®ÆÃ´µ²¥DÃD¡G

- #1: ¸ê®ÆÃ´µ²°ò¥»


#1a: <%# %> »yªk#1b: Page.DataBind()
vs. Control.DataBind()

- #2: ¸ê®ÆÃ´µ²²M³æ±±¨î¶µ


#2a: Repeater ±±¨î¶µ#2b: DataList ±±¨î¶µ
#2c: DataGrid ±±¨î¶µ

- #3: ¦s¨ú¸ê®Æ


#3a: DataSet Ãþ§O#3a: DataReader Ãþ§O

- #4: ²M³æ±±¨î¶µ½d¥»¤¤ªºÃ´µ²


#4a: DataBinder.Eval ¤èªk#4b: ©ú½TÂà´«
#4c: ItemDataBound ¨Æ¥ó


¸ê®ÆÃ´µ²°ò¥»
------------


<%# %> »yªk

ASP.NET ¤Þ¥Î·sªº«Å§i¦¡»yªk - <%# %>¡C ³o¬O .aspx ºô­¶¤¤¨Ï
¥Î¸ê®ÆÃ´µ²ªº°ò¥»»yªk¡C ³o¨Ç¦r¤¸¥²¶·¥]§t©Ò¦³¸ê®ÆÃ´µ²¹Bºâ
¦¡¡C ¤U¦C²M³æ¥]§t¦h­«¨Ó·½ªºÂ²³æ¸ê®ÆÃ´µ²½d¨Ò¡G

- ²©öÄÝ©Ê («È¤á»yªk)¡G


<%# custID %>

- ¶°¦X (­qÁÊ»yªk)¡G


<asp:ListBox id="List1" datasource='<%#
myArray %>' runat="server">

- ¹Bºâ¦¡ (³sµ¸¤H»yªk)¡G


<%# ( customer.First Name + " " +
customer.LastName ) %>

- ¤èªkµ²ªG (¥¼§¹¦¨¥­¿Å»yªk)¡G


<%# GetBalance(custID) %>


¤W­z½d¨Ò¤¤¡A<%# %> ¼ÐÅÒ·|«ü¥X¯S©w¸ê®Æ¨Ó·½¸ê°T¦b .aspx ºô
­¶¤¤ªº¦ì¸m¡C ¤U¦C¸ê®ÆÃ´µ²½d¨Ò·|¨Ï¥Î TextBox Web ¦øªA¾¹±±¨î
¶µ¡G


<asp:textbox id=txt text="<%# custID %>"
runat=server />

±z¥i¥H±N¦¹¸ê®ÆÃ´µ²§Þ³N¡A®M¥Î¦Ü©Ò¦³ Web ¦øªA¾¹±±¨î¶µ¡C ¦p
»Ý¦³Ãö¸ê®ÆÃ´µ²ªº¸Ô²Ó¸ê°T¡A½Ð°Ñ¾\¤U¦C ASP.NET §Ö³t¤Jªù±Ð¾Ç
½Òµ{¡G



Data Binding Server Controls
http://www.gotdotnet.com/QuickStart/aspplus/defau
lt.aspx?url=/quickstart/aspplus/doc/webdatabinding.aspx:
http://www.gotdotnet.com/QuickStart/aspplus/default.aspx?
url=
/quickstart/aspplus/doc/webdatabinding.aspx

¦p»Ý¦³Ãö¸ê®ÆÃ´µ²»yªkªº¸Ô²Ó¸ê°T¡A½Ð°Ñ¾\¤U¦C .NET
Framework Software Development Kit (SDK) ¤å¥ó¡G



Data Binding Expression Syntax
http://msdn.microsoft.com/library/default.asp?
url=/library/en-
us/cpgenref/html/cpcondatabindingexpressionsyntax.asp:
http://msdn.microsoft.com/library/default.asp?
url=/library/en-us
/cpgenref/html/cpcondatabindingexpressionsyntax.a
sp


Page.DataBind() vs. Control.DataBind()

·í¯S®í¸ê®Æ¨Ó·½¤w¨M©w¨Ã³]©w¦Ü .aspx ºô­¶¤Wªºª«¥ó«á¡A±z¥²¶·
±N¸ê®ÆÃ´µ²¨ì³o¨Ç¸ê®Æ¨Ó·½¡C ±z¥i¥H¨Ï¥Î Page.DataBind ©Î
Control.DataBind ¤èªk¡A±N¸ê®ÆÃ´µ²¨ì¸ê®Æ¨Ó·½¡C

³o¨âºØ¤èªkªº¹B§@¤è¦¡«ÜÃþ¦ü¡C ¥D­nªº¤£¦P¦b©ó¡A©I¥s
Page.DataBind ¤èªk¤§«á¡A©Ò¦³ªº¸ê®Æ¨Ó·½§¡Ã´µ²¦Ü¦øªA¾¹±±¨î
¶µ¡C ¦b±z©ú½T¦a©I¥s Web ¦øªA¾¹±±¨î¶µªº DataBind ¤èªk¡A©Îºô
­¶¼h¯Åªº Page.DataBind ¤èªk¤§«e¡A¸ê®Æ¤£·|§e²{µ¹±±¨î¶µ¡C ¤@
¯ë¦Ó¨¥¡APage.DataBind (©Î DataBind) ¬O±q Page_Load ¨Æ¥ó©I
¥sªº¡C

¦p»Ý¦³Ãö DataBind ¤èªkªº¸Ô²Ó¸ê°T¡A½Ð°Ñ¾\¤U¦C .NET
Framework SDK ¤å¥ó¡G Control.DataBind Method
http://msdn.microsoft.com/library/default.asp?
url=/library/en-
us/cpref/html/frlrfSystemWebUIControlClassDataBindTopic.as
p: http://msdn.microsoft.com/library/default.asp?
url=/library/en-
us /cpref/html/frlrfSystemWebUIControlClassDataBindTopic.a
sp

¸ê®ÆÃ´µ²²M³æ±±¨î¶µ
------------------

²M³æ±±¨î¶µ¬O¥i¥Hôµ²¦Ü¶°¦Xªº¯S®í Web ¦øªA¾¹±±¨î¶µ¡C ±z¥i
¥H¨Ï¥Î³o¨Ç±±¨î¶µ¡A¥H¦Û­qªº½d¥»®æ¦¡Åã¥Ü¸ê®Æ¦C¡C ©Ò¦³²M³æ±±
¨î¶µÅã¥Üªº DataSource ©M DataMember ÄݩʡA¥i¥H¥Î¨Óôµ²¦Ü¶°
¦X¡C

³o¨Ç±±¨î¶µ¥i¥H±N DataSource ÄÝ©Êôµ²¦Ü¥ô¦ó¤ä´©
IEnumerable¡BICollection ©Î IListSource ¤¶­±ªº¶°¦X¡C

Repeater ±±¨î¶µ

Repeater ±±¨î¶µ¬O½d¥»¤Æªº¸ê®ÆÃ´µ²²M³æ¡C Repeater ±±¨î¶µ¨S
¦³¥~Æ[¡A¥ç§Y¨S¦³¤º«Ø°t¸m©Î¼Ë¦¡¡C ¦]¦¹¡A±z¥²¶·¦b±±¨î¶µ½d¥»
¤¤©ú½T¦a«Å§i©Ò¦³ HTML °t¸m¡B®æ¦¡©M¼Ë¦¡¼ÐÅÒ¡C

¤U¦Cµ{¦¡½X½d¨Ò±N»¡©ú¦p¦ó¨Ï¥Î²M³æ±±¨î¶µ Repeater¡A¥HÅã¥Ü¸ê
®Æ¡G

ª`·N¡G ±z¥²¶·®Ú¾ÚÀô¹Ò¡A¾A·í¦a­×§ï³s½u¦r¦ê°Ñ¼Æ¡C

Visual Basic .NET


<%@ Page Language="vb" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>

<script runat="server">
Sub Page_Load(sender As Object, e As EventArgs)

Dim cnn As SqlConnection = New SqlConnection
("server=(local);" & _
"
database=pubs;Integrated Security=SSPI")
Dim cmd As SqlDataAdapter = New SqlDataAdapter
("select * from authors", cnn)
Dim ds As DataSet = New DataSet()
cmd.Fill(ds)
Repeater1.DataSource = ds
Repeater1.DataBind()

End Sub
</script>
<html>
<body>
<form id="Form1" method="post" runat="server">
<asp:Repeater id="Repeater1"
runat="server">
<ItemTemplate>
<%# DataBinder.Eval
(Container.DataItem,"au_id") %><br>
</ItemTemplate>
</asp:Repeater>
</form>
</body>
</html>

Visual C# .NET


<%@ Page language="c#" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>

<script runat="server">
void Page_Load(Object sender, EventArgs e)
{
SqlConnection cnn = new
SqlConnection("server=
(local);database=pubs;Integrated Security=SSPI");
SqlDataAdapter da = new SqlDataAdapter
("select * from authors", cnn);
DataSet ds = new DataSet();
da.Fill(ds, "authors");
Repeater1.DataSource = ds.Tables["authors"];
Repeater1.DataBind();
}
</script>
<html>
<body>
<form id="WebForm2" method="post"
runat="server">
<asp:Repeater id="Repeater1"
runat="server">
<ItemTemplate>
<%# DataBinder.Eval
(Container.DataItem,"au_id") %><br>
</ItemTemplate>
</asp:Repeater>
</form>
</body>
</html>

Visual J# .NET


<%@ Page language="VJ#" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>

<script runat="server">
void Page_Load(Object sender, EventArgs e)
{
SqlConnection cnn = new SqlConnection
("server=(local);database=pubs;Integrated
Security=SSPI");
SqlDataAdapter da = new SqlDataAdapter
("select * from authors", cnn);
DataSet ds = new DataSet();
da.Fill(ds, "authors");
DataTableCollection dtc = ds.get_Tables();
int index = dtc.IndexOf("authors");
Repeater1.set_DataSource(dtc.get_Item
(index));
Repeater1.DataBind();
}
</script>
<html>
<body>
<form id="WebForm2" method="post"
runat="server">
<asp:Repeater id="Repeater1"
runat="server">
<ItemTemplate>
<%# DataBinder.Eval
(Container.DataItem,"au_id") %><br>
</ItemTemplate>
</asp:Repeater>
</form>
</body>
</html>

¦p»Ý¦³Ãö Repeater ±±¨î¶µªº¸Ô²Ó¸ê°T¡A½Ð°Ñ¾\¤U¦C .NET
Framework SDK ¤å¥ó¡G



Repeater Web Server Control
http://msdn.microsoft.com/library/en-
us/cpgenref/html/cpconrepeaterwebcontrol.asp:
http://msdn.microsoft.com/library/en-us
/cpgenref/html/cpconrepeaterwebcontrol.asp


DataList ±±¨î¶µ

DataList Ãþ§O¬O¦h¥\¯à¡B½d¥»¤Æªº¸ê®ÆÃ´µ²²M³æ¡C ±z¥i¥H­×§ï½d
¥»¡A¥H¦Û­q¦¹±±¨î¶µ¡C »P Repeater ±±¨î¶µ¤£¦Pªº¬O¡ADataList
¤ä´©¤è¦V©Ê§e²{¡A¨Ã¥B¥i¥H¿ï¾Ü©Ê¦a¦b°õ¦æ®É¶¡¥H HTML ªí®æ§e
²{¡C

¦p»Ý¦³Ãö DataList ±±¨î¶µªº¸Ô²Ó¸ê°T¡A½Ð°Ñ¾\¤U¦C .NET
Framework SDK ¤å¥ó¡G



DataList Web Server Control
http://msdn.microsoft.com/library/en-
us/cpgenref/html/cpcondatalistwebcontrol.asp:
http://msdn.microsoft.com/library/en-us
/cpgenref/html/cpcondatalistwebcontrol.asp


DataGrid ±±¨î¶µ

DataGrid ±±¨î¶µ¬O¦h¥\¯à¡B¦h­Ó¸ê®Æ¦æªº¸ê®ÆÃ´µ²®æ½u¡C ¦pªG­n
¦Û­q DataGrid ¤¤­Ó§O¸ê®Æ¦æªº°t¸m¡A±z¥i¥H±N¸ê®Æ¦æÃþ«¬³]¬°
[½d¥»]¡A¨Ã¥B­×§ï¸ê®Æ¦æ½d¥»¡C DataGrid ±±¨î¶µ¥i¥H¦b¨S¦³½d¥»
ªº±¡ªp¤U¥[¥H§e²{¡A¦³§U©ó³ø§iª¬ªp¡C DataGrid ¤]¤ä´©¿ï¨ú½d
³ò¡B½s¿è¡B§R°£¡B¤À­¶¥H¤Î¨Ì¸ê®Æ¦æ©M«ö¶s¸ê®Æ¦æ±Æ§Ç¡C

¦p»Ý¦³Ãö DataGrid ±±¨î¶µªº¸Ô²Ó¸ê°T¡A½Ð°Ñ¾\¤U¦C .NET
Framework SDK ¤å¥ó¡G



DataGrid Web Server Control
http://msdn.microsoft.com/library/default.asp?
url=/library/en-
us/vbcon/html/vbconDataGridWebControl.asp:
http://msdn.microsoft.com/library/default.asp?
url=/library/en-us
/vbcon/html/vbconDataGridWebControl.asp

¦s¨ú¸ê®Æ
--------

¥»¸`±N§i¶D±z¡A¦p¦ó¦s¨ú¸ê®Æ®w¸ê®Æ¡A¨Ã¥B±N¸ê®ÆÃ´µ²¦Ü²M³æ±±
¨î¶µ¡C ±z¥i¥H¨Ï¥Î DataSet ©Î DataReader Ãþ§O¡A¥H¨ú±o¸ê®Æ®w
ªº¸ê®Æ¡C


DataSet Ãþ§O

DataSet ¥]§t§¹¾ãªº¸ê®Æªí¥Ü¡A¨Ò¦p¡Aªí®æµ²ºc¡Bªí®æ¤§¶¡ªºÃö«Y
¥H¤Î¸ê®Æ¶¶§Ç¡C DataSet Ãþ§O¯à°÷ÆF¬¡¦a¥[¥H¹B¥Î¡A¥H«K±N¥ô¦ó
¸ê®Æ®w¸ê°TÀx¦s¦Ü¡u¥i©µ¦ù¼Ð°O»y¨¥¡v(XML) Àɮפ¤¡C DataSet
Ãþ§O¬O¨S¦³ª¬ºAªº¡A³oªí¥Ü±z¥²¶·¦b¨S¦³³s¦Ü¦øªA¾¹³s½u¸ê·½ªº±¡
ªp¤U¡A±q¥Î¤áºÝ±N³o¨ÇÃþ§O¶Ç°e¦Ü¦øªA¾¹¡C ¤U¦Cµ{¦¡½X»¡©ú¦p¦ó
¨Ï¥Î DataSet¡A±N¸ê®ÆÃ´µ²¨ì±±¨î¶µ¡G

ª`·N¡G ±z¥²¶·®Ú¾ÚÀô¹Ò¡A¾A·í¦a­×§ï³s½u¦r¦ê°Ñ¼Æ¡C

Visual Basic .NET


Dim cnn As SqlConnection = New SqlConnection
("server=(local);" & _
"dat
abase=pubs;Integrated Security=SSPI")
Dim cmd As SqlDataAdapter = New SqlDataAdapter
("select * from authors", cnn)
Dim ds As DataSet = New DataSet()
cmd.Fill(ds)
MyRepeater.DataSource = ds
MyRepeater.DataBind()

Visual C# .NET


SqlConnection cnn = new SqlConnection("server=
(local);

database=pubs;Integrated Security=SSPI");
SqlDataAdapter da = new SqlDataAdapter("select *
from authors", cnn);
DataSet ds = new DataSet();
da.Fill(ds);
MyRepeater.DataSource = ds;
MyRepeater.DataBind();

Visual J# .NET


SqlConnection cnn = new SqlConnection("server=
(local);

database=pubs;Integrated Security=SSPI");
SqlDataAdapter da = new SqlDataAdapter("select *
from authors", cnn);
DataSet ds = new DataSet();
da.Fill(ds);
MyRepeater.set_DataSource(ds);
MyRepeater.DataBind();

¦p»Ý¦³Ãö DataSet Ãþ§Oªº¸Ô²Ó¸ê°T¡A½Ð°Ñ¾\¤U¦C .NET
Framework SDK ¤å¥ó¡G



DataSet Class
http://msdn.microsoft.com/library/default.asp?
url=/library/en-
us/cpref/html/frlrfsystemdatadatasetclasstopic.asp:
http://msdn.microsoft.com/library/default.asp?
url=/library/en-us
/cpref/html/frlrfsystemdatadatasetclasstopic.asp


DataReader Ãþ§O

¬Û¤Ï¦a¡A¦pªG±z¥u»ÝÅã¥Ü (¦ý¤£Åܧó) ©Ò­n§e²{ªº¸ê®Æ¡A«h
DataReader Ãþ§O·|¤ñ¸û¾A¦X¡C ¨Ò¦p¡ADropDownList ±±¨î¶µ¾A¦X
¨Ï¥Î DataReader¡A¦]¬° DataReader ¬O¥uÂà°eªº¸ê®Æ´å¼Ð¡C ¤U¦C
µ{¦¡½X±N§i¶D±z¡A¦p¦ó¨Ï¥Î SqlDataReader Ãþ§O¡A±N¸ê®ÆÃ´µ²¨ì
±±¨î¶µ¡G

Visual Basic .NET


Dim cnn As SqlConnection = New SqlConnection
("server=(local);" & _
"dat
abase=pubs;Integrated Security=SSPI")
Dim cmd As SqlCommand = New SqlCommand("select *
from authors", cnn)

cnn.Open()
MyRepeater.DataSource = cmd.ExecuteReader
(CommandBehavior.CloseConnection)
MyRepeater.DataBind()

Visual C# .NET


SqlConnection cnn = new SqlConnection("server=
(local);

database=pubs;Integrated Security=SSPI");
SqlCommand cmd = new SqlCommand("select * from
authors", cnn);

cnn.Open();
MyRepeater.DataSource = cmd.ExecuteReader
(CommandBehavior.CloseConnection);
MyRepeater.DataBind();

Visual J# .NET


SqlConnection cnn = new SqlConnection("server=
(local);

database=pubs;Integrated Security=SSPI");

SqlCommand cmd = new SqlCommand("select * from
authors", cnn);

cnn.Open();
MyRepeater.set_DataSource(cmd.ExecuteReader
(CommandBehavior.CloseConnection));
MyRepeater.DataBind();

¦p»Ý¦³Ãö SqlDataReader Ãþ§O©M ASP.NET ¸ê®Æ¦s¨úªº¸Ô²Ó¸ê
°T¡A½Ð°Ñ¾\ .NET Framework SDK ¤å¥óªº¤U¦C¥DÃD¡G



SqlDataReader Class
http://msdn.microsoft.com/library/default.asp?
url=/library/en-
us/cpref/html/frlrfSystemDataSqlClientSqlDataReaderClassTo
pic.asp: http://msdn.microsoft.com/library/default.asp?
url=/library/en-us
/cpref/html/frlrfSystemDataSqlClientSqlDataReader
ClassTopic.asp


Developing High-Performance ASP.NET Applications
http://msdn.microsoft.com/library/default.asp?
url=/library/en-us/cpguide/html/cpcondevelopinghigh-
performanceaspnetapplications.asp:
http://msdn.microsoft.com/library/default.asp?
url=/library/en-us
/cpguide/html/cpcondevelopinghigh-
performanceaspnetapplications.asp

²M³æ±±¨î¶µ½d¥»¤¤ªºÃ´µ²
----------------------

±z¥i¥H¨Ï¥Î²M³æ±±¨î¶µ¤¤ªº½d¥»¡A¥Hôµ²¨Ã¦Û­q¸ê®Æ¨Ó·½ªº­Ó§O
°O¿ý¡C ¥»¸`¥]§t¤F 3 ­Ó°õ¦æ¤èªk¡C


DataBinder.Eval ¤èªk

·í¸ê®Æ¨Ó·½»P¸ê®Æ®w©Ò¶Ç¦^ªº¸ê®Æ·f°t¨Ï¥Î®É¡A¸ê®Æ¨Ó·½¥i¯à¥]
§t³\¦h¸ê°T¡C ±z¥i¥H¨Ï¥Î¤@¯ë DataBinder.Eval ¤èªk¡A¥H¶Ç¦^¸ê
®Æ¡C ¦b¤U¦Cµ{¦¡½X½d¨Ò¤¤¡Aau_id Äæ¦ì¬O®e¾¹ª«¥óªº¸ê®Æ¨Ó·½©Ò
¶Ç¦^ªº¡C


<%# DataBinder.Eval(Container.DataItem,"au_id") %
>

¦p»Ý¦³Ãö DataBinder.Eval ¤èªkªº¸Ô²Ó¸ê°T¡A½Ð°Ñ¾\¤U¦C .NET
Framework SDK ¤å¥ó¡G



DataBinder.Eval Method
http://msdn.microsoft.com/library/default.asp?
url=/library/en-
us/cpref/html/frlrfSystemWebUIDataBinderClassEvalTopic.asp
: http://msdn.microsoft.com/library/default.asp?
url=/library/en-us
/cpref/html/frlrfSystemWebUIDataBinderClassEvalTo
pic.asp


©ú½TÂà´«

¦pªG±z»Ý­n§ó±jªº±±¨î¡A½Ð¨Ï¥Î©ú½TÂà´«¡C ©ú½TÂà´«·|¨Ï¥Î«¬§O
Âà´«ÃöÁä¦r¡C ³o¨ÇÃöÁä¦r¥i¥H¦p¨ç¼Æ¯ë°õ¦æ¡A¦ý¬O½s;¹·|²£¥Í
¤º´Oµ{¦¡½X¡C ¦]¦¹¡A°õ¦æ³t«×¤ñ¨ç¼Æ©I¥sµy§Ö¡C ¤U¦Cµ{¦¡½X½d¨Ò
¨Ï¥Î©ú½TÂà´«¡G

Visual Basic .NET


' DataTable as the DataSource
<%# CType(Container.DataItem,
System.Data.DataRowView)("au_id") %>

' DataReader as the DataSource
<%# CType(Container.DataItem,
System.Data.Common.DbDataRecord)("au_id") %>

' DataReader as the DataSource
<%# CType(Container.DataItem,
System.Data.Common.DbDataRecord)(0) %>

Visual C# .NET


// DataTable as the DataSource
<%# ((System.Data.DataRowView)Container.DataItem)
["au_id"] %>

// DataReader as the DataSource
<%# ((System.Data.Common.DbDataRecord)
Container.DataItem)["au_id"] %>

// DataReader as the DataSource
<%# ((System.Data.Common.DbDataRecord)
Container.DataItem)[0] %>

Visual J# .NET


// DataTable as the DataSource
<%# ((System.Data.DataRowView)Container.DataItem)
["au_id"] %>

// DataReader as the DataSource
<%# ((System.Data.Common.DbDataRecord)
Container.DataItem)["au_id"] %>

// DataReader as the DataSource
<%# ((System.Data.Common.DbDataRecord)
Container.DataItem)[0] %>

½Ðª`·N¡A¤W­z½d¨Ò¨Ï¥Î DataTable (DataSet ªº¤l¶°) ©Î
DataReader °µ¬°¸ê®Æ¨Ó·½¡C


ItemDataBound ¨Æ¥ó

±z¤]¥i¥H¨Ï¥Î±±¨î¶µªº ItemDataBound ¨Æ¥ó¨Óôµ²¸ê®Æ¡C ·í¸ê
®ÆÃ´µ²¦Ü±±¨î¶µ®É¡A´N·|µo¥Í³o­Ó¨Æ¥ó¡C ¤U¦C HTML µ{¦¡½X½d¨Ò
¨Ï¥Î ItemTemplate ©w¸q Repeater ±±¨î¶µ¡G


<asp:repeater id=rptr runat=server>
<itemtemplate>
<asp:label id=lblAuthorID runat=server />
</itemtemplate>
</asp:repeater>

±zªººô­¶»Ý­n¤U¦C¤èªk¡G

Visual Basic .NET


public Sub Page_Load(ByVal sender As
System.Object, ByVal e As System.EventArgs)

'TODO: Retrieve data from a database,
'and bind data to a list control.

End Sub

public Sub rptr_OnItemDataBound(ByVal sender As
Object, _
ByVal e As
System.Web.UI.WebControls.RepeaterItemEventArgs) Handles
rptr.ItemDataBound
Dim rec As DataRowView
rec = e.Item.DataItem

'Make sure that you have the data.
If Not IsDBNull(rec) Then
Dim l1 As Label
l1 = e.Item.FindControl("lblAuthorID")
l1.Text = rec("au_id").ToString()
End If
End Sub

Visual C# .NET


public void Page_Init(object sender,
System.EventArgs e)
{
rptr.ItemDataBound += new
RepeaterItemEventHandler(rptr_OnItemDataBound);
}
public void Page_Load(object sender,
System.EventArgs e)
{
// TODO: Retrieve data from a database,
// and bind the data to a list control.
}
public void rptr_OnItemDataBound(object sender,
RepeaterItemEventArgs e)
{
System.Data.Common.DbDataRecord rec =
(System.Data.Common.DbDataRecord)

e.Item.DataItem;
if(rec!=null) //Make sure that you have the
data.
{
Label l1 = (Label)e.Item.FindControl
("lblAuthorID");
l1.Text = rec["au_id"].ToString();
}
}

Visual J# .NET


public void Page_Init(Object sender,
System.EventArgs e)
{
rptr.add_ItemDataBound(new
RepeaterItemEventHandler(rptr_OnItemDataBound));
}
private void Page_Load(Object sender,
System.EventArgs e)
{
// TODO: Retrieve data from a
database,
// and bind the data to a list
control.
}
public void rptr_OnItemDataBound(Object sender,
RepeaterItemEventArgs e)
{
System.Data.Common.DbDataRecord rec
= (System.Data.Common.DbDataRecord)

e.get_Item().get_DataItem();
if (rec != null) //Make sure that
you have the data.
{
Label l1 = (Label)
e.get_Item().FindControl("lblAuthorID");
l1.set_Text
(((rec.get_Item("au_id")).ToString()));
}
}

?¦Ò
====

¦p»Ý¦³Ãö ASP.NET ªº¸Ô²Ó¤@¯ë¸ê°T¡A½Ð°Ñ¾\¤U¦C MSDN ·s»D¸s
²Õ¡G

http://go.microsoft.com/fwlink/?
linkid=5811&clcid=0x409:
microsoft.public.dotnet.framework.aspnet

³¯¸tÅv
¥xÆW·L³n§Þ³N³B¤ä´©¤uµ{®v
>-----­ì©l¶l¥ó-----

0 new messages