DetailsViewModeEventArgs Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
ModeChanging olayı için veriler sağlar.
public ref class DetailsViewModeEventArgs : System::ComponentModel::CancelEventArgs
public class DetailsViewModeEventArgs : System.ComponentModel.CancelEventArgs
type DetailsViewModeEventArgs = class
inherit CancelEventArgs
Public Class DetailsViewModeEventArgs
Inherits CancelEventArgs
- Devralma
Örnekler
Aşağıdaki kod örneği, denetim düzenleme moduna geçtiğinde çağrıyı başlatan satırı gizlemek için ModeChanging olay işleyicisine geçirilen nesnenin DetailsView nasıl kullanılacağını DetailsViewModeEventArgs gösterir.
<%@ 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 CustomerDetailsView_ModeChanging(Object sender, DetailsViewModeEventArgs e)
{
// Use the NewMode property to determine the mode to which the
// DetailsView control is transitioning.
switch (e.NewMode)
{
case DetailsViewMode.Edit:
// Hide the pager row and clear the Label control
// when transitioning to edit mode.
CustomerDetailsView.AllowPaging = false;
MessageLabel.Text = "";
break;
case DetailsViewMode.ReadOnly:
// Display the pager row and confirmation message
// when transitioning to edit mode.
CustomerDetailsView.AllowPaging = true;
if (e.CancelingEdit)
{
MessageLabel.Text = "Update canceled.";
}
else
{
MessageLabel.Text = "Update completed.";
}
break;
case DetailsViewMode.Insert:
// Cancel the mode change if the DetailsView
// control attempts to transition to insert
// mode.
e.Cancel = true;
break;
default:
MessageLabel.Text = "Unsupported mode.";
break;
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>DetailsViewModeEventArgs Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DetailsViewModeEventArgs Example</h3>
<asp:detailsview id="CustomerDetailsView"
datasourceid="DetailsViewSource"
datakeynames="CustomerID"
autogeneraterows="true"
autogenerateeditbutton="true"
allowpaging="true"
onmodechanging="CustomerDetailsView_ModeChanging"
runat="server">
</asp:detailsview>
<br/><br/>
<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="DetailsViewSource"
selectcommand="Select [CustomerID], [CompanyName], [Address],
[City], [PostalCode], [Country] From [Customers]"
updatecommand="Update [Customers] Set
[CompanyName]=@CompanyName, [Address]=@Address,
[City]=@City, [PostalCode]=@PostalCode,
[Country]=@Country
Where [CustomerID]=@CustomerID"
connectionstring=
"<%$ ConnectionStrings:NorthWindConnectionString%>"
runat="server"/>
</form>
</body>
</html>
<%@ Page language="VB" autoeventwireup="false" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Sub CustomerDetailsView_ModeChanging(ByVal sender As Object, ByVal e As DetailsViewModeEventArgs) Handles CustomerDetailsView.ModeChanging
' Use the NewMode property to determine the mode to which the
' DetailsView control is transitioning.
Select Case e.NewMode
Case DetailsViewMode.Edit
' Hide the pager row and clear the Label control
' when transitioning to edit mode.
CustomerDetailsView.AllowPaging = False
MessageLabel.Text = ""
Case DetailsViewMode.ReadOnly
' Display the pager row and confirmation message
' when transitioning to edit mode.
CustomerDetailsView.AllowPaging = True
If e.CancelingEdit Then
MessageLabel.Text = "Update canceled."
Else
MessageLabel.Text = "Update completed."
End If
Case DetailsViewMode.Insert
' Cancel the mode change if the DetailsView
' control attempts to transition to insert
' mode.
e.Cancel = True
Case Else
MessageLabel.Text = "Unsupported mode."
End Select
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>DetailsViewModeEventArgs Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DetailsViewModeEventArgs Example</h3>
<asp:detailsview id="CustomerDetailsView"
datasourceid="DetailsViewSource"
datakeynames="CustomerID"
autogeneraterows="true"
autogenerateeditbutton="true"
allowpaging="true"
runat="server">
</asp:detailsview>
<br/><br/>
<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="DetailsViewSource"
selectcommand="Select [CustomerID], [CompanyName], [Address],
[City], [PostalCode], [Country] From [Customers]"
updatecommand="Update [Customers] Set
[CompanyName]=@CompanyName, [Address]=@Address,
[City]=@City, [PostalCode]=@PostalCode,
[Country]=@Country
Where [CustomerID]=@CustomerID"
connectionstring=
"<%$ ConnectionStrings:NorthWindConnectionString%>"
runat="server"/>
</form>
</body>
</html>
Açıklamalar
Bir ModeChanging denetim düzenleme, ekleme ve salt okunur mod arasında değişiklik yapmaya çalıştığında DetailsView ancak mod gerçekten değişmeden önce olayı tetikler. Bu, bu olay gerçekleştiğinde denetimi belirli bir mod için yapılandırma DetailsView veya mod değişikliğini iptal etme gibi özel bir yordam gerçekleştiren bir olay işleyicisi sağlamanıza olanak tanır.
Olay DetailsViewModeEventArgs işleyicisine bir nesne geçirilir. Bu, denetimin değiştirildiği DetailsView modu belirlemenize, olayın kullanıcının bir düzenleme işlemini iptal etmesinin sonucu olarak mı ModeChanging oluşturulduğuna yoksa ekleme işleminin iptal edilmesi gerektiğini mi belirlemenize olanak tanır. Yeni modu belirlemek için özelliğini kullanın NewMode . Özelliğini, sabit listesi değerlerinden birine DetailsViewMode ayarlayarak alternatif moda geçmek için de kullanabilirsinizNewMode.
CancelingEdit Kullanıcının düzenleme işlemini iptal edip etmediğini belirlemek için özelliğini kullanın. Ekleme işlemini iptal etmek için özelliğini olarak trueayarlayınCancel.
Olayları işleme hakkında daha fazla bilgi için bkz. Olayları İşleme ve Oluşturma.
Sınıfının bir örneğinin ilk özellik değerlerinin DetailsViewModeEventArgs listesi için oluşturucuya DetailsViewModeEventArgs bakın.
Oluşturucular
| Name | Description |
|---|---|
| DetailsViewModeEventArgs(DetailsViewMode, Boolean) |
DetailsViewModeEventArgs sınıfının yeni bir örneğini başlatır. |
Özellikler
| Name | Description |
|---|---|
| Cancel |
Olayın iptal edilip edilmeyeceğini belirten bir değer alır veya ayarlar. (Devralındığı yer: CancelEventArgs) |
| CancelingEdit |
Kullanıcının düzenleme işlemini iptal etme sonucu olayın tetiklenip ModeChanging tetiklendiğini belirten bir değer alır. |
| NewMode |
Denetimin değiştirildiği DetailsView modu alır veya ayarlar. |
Yöntemler
| Name | Description |
|---|---|
| Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
| GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
| GetType() |
Geçerli örneğin Type alır. (Devralındığı yer: Object) |
| MemberwiseClone() |
Geçerli Objectbasit bir kopyasını oluşturur. (Devralındığı yer: Object) |
| ToString() |
Geçerli nesneyi temsil eden bir dize döndürür. (Devralındığı yer: Object) |