FormViewDeleteEventArgs.Values Properti
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mendapatkan kamus pasangan nama/nilai bidang non-kunci untuk item yang akan dihapus.
public:
property System::Collections::Specialized::IOrderedDictionary ^ Values { System::Collections::Specialized::IOrderedDictionary ^ get(); };
public System.Collections.Specialized.IOrderedDictionary Values { get; }
member this.Values : System.Collections.Specialized.IOrderedDictionary
Public ReadOnly Property Values As IOrderedDictionary
Nilai Properti
Yang OrderedDictionary berisi pasangan nama/nilai bidang non-kunci untuk item yang akan dihapus.
Contoh
Contoh berikut menunjukkan cara menggunakan Values properti untuk mengakses nilai bidang non-kunci rekaman yang sedang dihapus.
<%@ 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_ItemDeleting(Object sender, FormViewDeleteEventArgs e)
{
// Get the employee ID, name, and job title from the Keys and Values
// properties.
String keyValue = e.Keys["EmployeeID"].ToString();
String employeeName = e.Values["FirstName"].ToString() +
" " + e.Values["LastName"].ToString();
String title = e.Values["Title"].ToString();
// Cancel the delete operation if the user attempts to
// delete a protected record. In this example, records for
// employees with a "Sales Manager" job title are protected.
if (title.Equals("Sales Manager"))
{
e.Cancel = true;
MessageLabel.Text = "You cannot delete record " +
e.RowIndex.ToString() + ". " + employeeName +
" (Employee Number " + keyValue.ToString() +
") is protected.";
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>FormViewDeleteEventArgs Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>FormViewDeleteEventArgs Example</h3>
<asp:formview id="EmployeeFormView"
datasourceid="EmployeeSource"
allowpaging="true"
datakeynames="EmployeeID"
onitemdeleting="EmployeeFormView_ItemDeleting"
runat="server">
<itemtemplate>
<table>
<tr>
<td>
<asp:image id="EmployeeImage"
imageurl='<%# Eval("PhotoPath") %>'
alternatetext='<%# Eval("LastName") %>'
runat="server"/>
</td>
<td>
<asp:label id="FirstNameLabel"
text='<%#Bind("FirstName")%>'
font-bold="true"
runat="server"/>
<asp:label id="LastNameLabel"
text='<%#Bind("LastName")%>'
font-bold="true"
runat="server"/>
<br/>
<asp:label id="TitleLabel"
text='<%#Bind("Title")%>'
runat="server"/>
</td>
</tr>
<tr>
<td colspan="2">
<asp:button id="DeleteButton"
text="Delete Record"
commandname="Delete"
runat="server" />
</td>
</tr>
</table>
</itemtemplate>
</asp:formview>
<asp:label id="MessageLabel"
forecolor="Red"
runat="server"/>
<!-- 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]"
deletecommand="Delete [Employees] Where [EmployeeID]=@EmployeeID"
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_ItemDeleting(ByVal sender As Object, ByVal e As FormViewDeleteEventArgs)
' Get the employee ID, name, and job title from the Keys and Values
' properties.
Dim keyValue As String = e.Keys("EmployeeID").ToString()
Dim employeeName As String = e.Values("FirstName").ToString() & _
" " & e.Values("LastName").ToString()
Dim title As String = e.Values("Title").ToString()
' Cancel the delete operation if the user attempts to
' delete a protected record. In this example, records for
' employees with a "Sales Manager" job title are protected.
If Title.Equals("Sales Manager") Then
e.Cancel = True
MessageLabel.Text = "You cannot delete record " & _
e.RowIndex.ToString() & ". " & employeeName & _
" (Employee Number " & keyValue.ToString() & _
") is protected."
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>FormViewDeleteEventArgs Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>FormViewDeleteEventArgs Example</h3>
<asp:formview id="EmployeeFormView"
datasourceid="EmployeeSource"
allowpaging="true"
datakeynames="EmployeeID"
onitemdeleting="EmployeeFormView_ItemDeleting"
runat="server">
<itemtemplate>
<table>
<tr>
<td>
<asp:image id="EmployeeImage"
imageurl='<%# Eval("PhotoPath") %>'
alternatetext='<%# Eval("LastName") %>'
runat="server"/>
</td>
<td>
<asp:label id="FirstNameLabel"
text='<%#Bind("FirstName")%>'
font-bold="true"
runat="server"/>
<asp:label id="LastNameLabel"
text='<%#Bind("LastName")%>'
font-bold="true"
runat="server"/>
<br/>
<asp:label id="TitleLabel"
text='<%#Bind("Title")%>'
runat="server"/>
</td>
</tr>
<tr>
<td colspan="2">
<asp:button id="DeleteButton"
text="Delete Record"
commandname="Delete"
runat="server" />
</td>
</tr>
</table>
</itemtemplate>
</asp:formview>
<asp:label id="MessageLabel"
forecolor="Red"
runat="server"/>
<!-- 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]"
deletecommand="Delete [Employees] Where [EmployeeID]=@EmployeeID"
connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
runat="server"/>
</form>
</body>
</html>
Keterangan
Values Gunakan properti untuk mengakses nilai bidang non-kunci agar rekaman dihapus. Misalnya, Anda dapat menggunakan nilai-nilai ini untuk memverifikasi rekaman sebelum menghapusnya, atau untuk menyimpan log rekaman yang dihapus.
Nota
Properti ini tidak berisi bidang kunci atau bidang. Untuk mengakses nilai pasangan nama/nilai untuk bidang atau bidang kunci, gunakan Keys properti .
Properti Values mengembalikan OrderedDictionary objek yang mengimplementasikan System.Collections.Specialized.IOrderedDictionary antarmuka. Objek OrderedDictionary berisi System.Collections.DictionaryEntry objek yang mewakili bidang non-kunci. Untuk mengakses nama bidang, gunakan Keys properti OrderedDictionary objek. Demikian pula, Anda dapat mengakses nilai bidang dengan menggunakan Values properti .
Nota
Sebagai pintasan, Anda juga dapat menggunakan pengindeks OrderedDictionary objek untuk mengakses nilai bidang. Keuntungan dalam menggunakan pengindeks adalah mengembalikan nilai bidang secara langsung. Kontrol sumber data yang mengandalkan urutan bidang (seperti AccessDataSource) hanya dapat mengakses nilai bidang berdasarkan indeks.
Nilai dalam Values koleksi tidak diteruskan ke kontrol sumber data. Jika sumber data memerlukan salah satu nilai ini, Anda harus menambahkan nilai-nilai ini ke Keys koleksi.
Properti Keys dan Values bersifat baca-saja; namun, Anda dapat mengubah nilai OrderedDictionary bidang objek. Jika Anda mengubah nilai bidang kunci dan non-kunci, rekaman terkait akan dihapus dari sumber data.