FormView.ItemCreated 이벤트
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
모든 행이 FormView 컨트롤에 작성된 후에 발생합니다.
public:
event EventHandler ^ ItemCreated;
public event EventHandler ItemCreated;
member this.ItemCreated : EventHandler
Public Custom Event ItemCreated As EventHandler
이벤트 유형
예제
다음 예제에서는 사용 ItemCreated 하는 방법에 설명 합니다 호출기 행에 포함 된 컨트롤의 Label 텍스트를 업데이트 하는 이벤트입니다.
<%@ Page language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
void EmployeeFormView_ItemCreated(Object sender, EventArgs e)
{
// Get the pager row.
FormViewRow pagerRow = EmployeeFormView.BottomPagerRow;
// Get the Label controls that display the current page information
// from the pager row.
Label pageNum = (Label)pagerRow.Cells[0].FindControl("PageNumberLabel");
Label totalNum = (Label)pagerRow.Cells[0].FindControl("TotalPagesLabel");
if ((pageNum != null) && (totalNum != null))
{
// Update the Label controls with the current page values.
int page = EmployeeFormView.PageIndex + 1;
int count = EmployeeFormView.PageCount;
pageNum.Text = page.ToString();
totalNum.Text = count.ToString();
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>FormView PagerTemplate Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>FormView PagerTemplate Example</h3>
<asp:formview id="EmployeeFormView"
datasourceid="EmployeeSource"
allowpaging="true"
datakeynames="EmployeeID"
onitemcreated="EmployeeFormView_ItemCreated"
runat="server">
<itemtemplate>
<table>
<tr>
<td>
<asp:image id="EmployeeImage"
imageurl='<%# Eval("PhotoPath") %>'
alternatetext='<%# Eval("LastName") %>'
runat="server"/>
</td>
<td>
<h3><%# Eval("FirstName") %> <%# Eval("LastName") %></h3>
<%# Eval("Title") %>
</td>
</tr>
</table>
</itemtemplate>
<pagertemplate>
<table width="100%">
<tr>
<td>
<asp:linkbutton id="PreviousButton"
text="<"
commandname="Page"
commandargument="Prev"
runat="Server"/>
<asp:linkbutton id="NextButton"
text=">"
commandname="Page"
commandargument="Next"
runat="Server"/>
</td>
<td align="right">
Page <asp:label id="PageNumberLabel" runat="server"/>
of <asp:label id="TotalPagesLabel" runat="server"/>
</td>
</tr>
</table>
</pagertemplate>
<pagersettings position="Bottom"
mode="NextPrevious"/>
</asp:formview>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the Northwind sample database. Use an ASP.NET -->
<!-- expression to retrieve the connection string value -->
<!-- from the Web.config file. -->
<asp:sqldatasource id="EmployeeSource"
selectcommand="Select [EmployeeID], [LastName], [FirstName], [Title], [PhotoPath] From [Employees]"
connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
runat="server"/>
</form>
</body>
</html>
<%@ Page language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Sub EmployeeFormView_ItemCreated(ByVal sender As Object, ByVal e As EventArgs)
' Get the pager row.
Dim pagerRow As FormViewRow = EmployeeFormView.BottomPagerRow
' Get the Label controls that display the current page information
' from the pager row.
Dim pageNum As Label = CType(pagerRow.Cells(0).FindControl("PageNumberLabel"), Label)
Dim totalNum As Label = CType(pagerRow.Cells(0).FindControl("TotalPagesLabel"), Label)
If pageNum IsNot Nothing And totalNum IsNot Nothing Then
' Update the Label controls with the current page values.
Dim page As Integer = EmployeeFormView.PageIndex + 1
Dim count As Integer = EmployeeFormView.PageCount
pageNum.Text = page.ToString()
totalNum.Text = count.ToString()
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>FormView PagerTemplate Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>FormView PagerTemplate Example</h3>
<asp:formview id="EmployeeFormView"
datasourceid="EmployeeSource"
allowpaging="true"
datakeynames="EmployeeID"
onitemcreated="EmployeeFormView_ItemCreated"
runat="server">
<itemtemplate>
<table>
<tr>
<td>
<asp:image id="EmployeeImage"
imageurl='<%# Eval("PhotoPath") %>'
alternatetext='<%# Eval("LastName") %>'
runat="server"/>
</td>
<td>
<h3><%# Eval("FirstName") %> <%# Eval("LastName") %></h3>
<%# Eval("Title") %>
</td>
</tr>
</table>
</itemtemplate>
<pagertemplate>
<table width="100%">
<tr>
<td>
<asp:linkbutton id="PreviousButton"
text="<"
commandname="Page"
commandargument="Prev"
runat="Server"/>
<asp:linkbutton id="NextButton"
text=">"
commandname="Page"
commandargument="Next"
runat="Server"/>
</td>
<td align="right">
Page <asp:label id="PageNumberLabel" runat="server"/>
of <asp:label id="TotalPagesLabel" runat="server"/>
</td>
</tr>
</table>
</pagertemplate>
<pagersettings position="Bottom"
mode="NextPrevious"/>
</asp:formview>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the Northwind sample database. Use an ASP.NET -->
<!-- expression to retrieve the connection string value -->
<!-- from the Web.config file. -->
<asp:sqldatasource id="EmployeeSource"
selectcommand="Select [EmployeeID], [LastName], [FirstName], [Title], [PhotoPath] From [Employees]"
connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
runat="server"/>
</form>
</body>
</html>
설명
이벤트는 ItemCreated 모든 행이 컨트롤에 FormView 만들어진 후에 발생합니다. 이 문제는 컨트롤이 처음 렌더링되거나 사용자가 다른 레코드로 이동할 때 발생할 수 있습니다. 이 이벤트를 사용하여 이 이벤트가 발생할 때마다 행의 내용을 추가하거나 수정하는 등 사용자 지정 루틴을 수행하는 이벤트 처리 메서드를 제공할 수 있습니다.
참고
이벤트는 ItemCreated 컨트롤이 FormView 데이터에 바인딩되기 전에 발생합니다. 바인딩된 필드의 값을 수정하려면 이벤트를 사용합니다 DataBound .
각각 , FooterRowTopPagerRow, 또는 BottomPagerRow 속성을 사용하여 HeaderRow컨트롤의 FormView 머리글, 바닥글 및 호출기 행에 액세스할 수 있습니다. 데이터 행에 액세스하려면 속성을 사용합니다 Row .
이벤트를 처리 하는 방법에 대 한 자세한 내용은 참조 하세요. 이벤트 처리 및 발생합니다.
적용 대상
추가 정보
.NET