FormView.CurrentMode Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft den aktuellen Dateneingabemodus des FormView-Steuerelements ab.
public:
property System::Web::UI::WebControls::FormViewMode CurrentMode { System::Web::UI::WebControls::FormViewMode get(); };
[System.ComponentModel.Browsable(false)]
public System.Web.UI.WebControls.FormViewMode CurrentMode { get; }
[<System.ComponentModel.Browsable(false)>]
member this.CurrentMode : System.Web.UI.WebControls.FormViewMode
Public ReadOnly Property CurrentMode As FormViewMode
Eigenschaftswert
Einer der FormViewMode-Werte.
- Attribute
Beispiele
Im folgenden Beispiel wird veranschaulicht, wie Die CurrentMode Eigenschaft verwendet wird, um zu bestimmen, ob das FormView Steuerelement im Bearbeitungs-, Einfüge- oder schreibgeschützten Modus enthalten ist. Wenn der Benutzer versucht, zu einem anderen Datensatz zu navigieren, während das FormView Steuerelement mehr bearbeitet wird, wird der Pagingvorgang abgebrochen.
<%@ 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_OnPageIndexChanging(Object sender, FormViewPageEventArgs e)
{
// Cancel the paging operation if the user attempts to navigate
// to another record while the FormView control is in edit mode.
if (EmployeeFormView.CurrentMode == FormViewMode.Edit)
{
e.Cancel = true;
MessageLabel.Text =
"Please complete the update operation before navigating to another record.";
}
}
void EmployeeFormView_OnModeChanged(Object sender, EventArgs e)
{
// Clear the message label.
MessageLabel.Text = "";
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>FormView Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>FormView Example</h3>
<asp:formview id="EmployeeFormView"
datasourceid="EmployeeSource"
allowpaging="true"
datakeynames="EmployeeID"
emptydatatext="No employees found."
onpageindexchanging="EmployeeFormView_OnPageIndexChanging"
onmodechanged="EmployeeFormView_OnModeChanged"
runat="server">
<rowstyle backcolor="LightGreen"
wrap="false"/>
<editrowstyle backcolor="LightBlue"
wrap="false"/>
<itemtemplate>
<table>
<tr>
<td rowspan="4">
<asp:image id="EmployeeImage"
imageurl='<%# Eval("PhotoPath") %>'
alternatetext='<%# Eval("LastName") %>'
runat="server"/>
</td>
<td colspan="2">
</td>
</tr>
<tr>
<td>
<b>Name:</b>
</td>
<td>
<%# Eval("FirstName") %> <%# Eval("LastName") %>
</td>
</tr>
<tr>
<td>
<b>Title:</b>
</td>
<td>
<%# Eval("Title") %>
</td>
</tr>
<tr>
<td colspan="2">
<asp:linkbutton id="Edit"
text="Edit"
commandname="Edit"
runat="server"/>
</td>
</tr>
</table>
</itemtemplate>
<edititemtemplate>
<table>
<tr>
<td rowspan="4">
<asp:image id="EmployeeEditImage"
imageurl='<%# Eval("PhotoPath") %>'
alternatetext='<%# Eval("LastName") %>'
runat="server"/>
</td>
<td colspan="2">
</td>
</tr>
<tr>
<td>
<b>Name:</b>
</td>
<td>
<asp:textbox id="FirstNameUpdateTextBox"
text='<%# Bind("FirstName") %>'
runat="server"/>
<asp:textbox id="LastNameUpdateTextBox"
text='<%# Bind("LastName") %>'
runat="server"/>
</td>
</tr>
<tr>
<td>
<b>Title:</b>
</td>
<td>
<asp:textbox id="TitleUpdateTextBox"
text='<%# Bind("Title") %>'
runat="server"/>
</td>
</tr>
<tr>
<td colspan="2">
<asp:linkbutton id="UpdateButton"
text="Update"
commandname="Update"
runat="server"/>
<asp:linkbutton id="CancelButton"
text="Cancel"
commandname="Cancel"
runat="server"/>
</td>
</tr>
</table>
</edititemtemplate>
</asp:formview>
<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="EmployeeSource"
selectcommand="Select [EmployeeID], [LastName], [FirstName], [Title], [PhotoPath] From [Employees]"
updatecommand="Update [Employees] Set [LastName]=@LastName, [FirstName]=@FirstName, [Title]=@Title 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_OnPageIndexChanging(ByVal sender As Object, ByVal e As FormViewPageEventArgs)
' Cancel the paging operation if the user attempts to navigate
' to another record while the FormView control is in edit mode.
If EmployeeFormView.CurrentMode = FormViewMode.Edit Then
e.Cancel = True
MessageLabel.Text = _
"Please complete the update operation before navigating to another record."
End If
End Sub
Sub EmployeeFormView_OnModeChanged(ByVal sender As Object, ByVal e As EventArgs)
' Clear the message label.
MessageLabel.Text = ""
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>FormView Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>FormView Example</h3>
<asp:formview id="EmployeeFormView"
datasourceid="EmployeeSource"
allowpaging="true"
datakeynames="EmployeeID"
emptydatatext="No employees found."
onpageindexchanging="EmployeeFormView_OnPageIndexChanging"
onmodechanged="EmployeeFormView_OnModeChanged"
runat="server">
<rowstyle backcolor="LightGreen"
wrap="false"/>
<editrowstyle backcolor="LightBlue"
wrap="false"/>
<itemtemplate>
<table>
<tr>
<td rowspan="4">
<asp:image id="EmployeeImage"
imageurl='<%# Eval("PhotoPath") %>'
alternatetext='<%# Eval("LastName") %>'
runat="server"/>
</td>
<td colspan="2">
</td>
</tr>
<tr>
<td>
<b>Name:</b>
</td>
<td>
<%# Eval("FirstName") %> <%# Eval("LastName") %>
</td>
</tr>
<tr>
<td>
<b>Title:</b>
</td>
<td>
<%# Eval("Title") %>
</td>
</tr>
<tr>
<td colspan="2">
<asp:linkbutton id="Edit"
text="Edit"
commandname="Edit"
runat="server"/>
</td>
</tr>
</table>
</itemtemplate>
<edititemtemplate>
<table>
<tr>
<td rowspan="4">
<asp:image id="EmployeeEditImage"
imageurl='<%# Eval("PhotoPath") %>'
alternatetext='<%# Eval("LastName") %>'
runat="server"/>
</td>
<td colspan="2">
</td>
</tr>
<tr>
<td>
<b>Name:</b>
</td>
<td>
<asp:textbox id="FirstNameUpdateTextBox"
text='<%# Bind("FirstName") %>'
runat="server"/>
<asp:textbox id="LastNameUpdateTextBox"
text='<%# Bind("LastName") %>'
runat="server"/>
</td>
</tr>
<tr>
<td>
<b>Title:</b>
</td>
<td>
<asp:textbox id="TitleUpdateTextBox"
text='<%# Bind("Title") %>'
runat="server"/>
</td>
</tr>
<tr>
<td colspan="2">
<asp:linkbutton id="UpdateButton"
text="Update"
commandname="Update"
runat="server"/>
<asp:linkbutton id="CancelButton"
text="Cancel"
commandname="Cancel"
runat="server"/>
</td>
</tr>
</table>
</edititemtemplate>
</asp:formview>
<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="EmployeeSource"
selectcommand="Select [EmployeeID], [LastName], [FirstName], [Title], [PhotoPath] From [Employees]"
updatecommand="Update [Employees] Set [LastName]=@LastName, [FirstName]=@FirstName, [Title]=@Title Where [EmployeeID]=@EmployeeID"
connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
runat="server"/>
</form>
</body>
</html>
Hinweise
Verwenden Sie die CurrentMode Eigenschaft, um zu bestimmen, ob sich das FormView Steuerelement im Bearbeitungs-, Einfüge- oder schreibgeschützten Modus befindet. In der folgenden Tabelle sind die verschiedenen Moduswerte aufgeführt.
Mode | BESCHREIBUNG |
---|---|
FormViewMode.Edit |
Das FormView Steuerelement befindet sich im Bearbeitungsmodus, mit dem der Benutzer die Werte eines Datensatzes aktualisieren kann. |
FormViewMode.Insert |
Das FormView Steuerelement befindet sich im Einfügemodus, mit dem der Benutzer der Datenquelle einen neuen Datensatz hinzufügen kann. |
FormView.ReadOnly |
Das FormView Steuerelement befindet sich im schreibgeschützten Modus, der der normale Anzeigemodus ist. |
Dieser Wert wird normalerweise automatisch vom FormView Steuerelement festgelegt, wenn auf die Schaltfläche "Neu", "Aktualisieren", "Einfügen", "Löschen" oder "Abbrechen" geklickt wird. Wenn das FormView Steuerelement die Modi als Reaktion auf eine Aktion ändert, werden die Ereignisse in der folgenden Tabelle ausgelöst. Auf diese Weise können Sie einen benutzerdefinierten Ereignishandler erstellen, der die entsprechende Routine ausführt, wenn das Ereignis auftritt.
Ereignis | BESCHREIBUNG |
---|---|
ModeChanged | Tritt auf, wenn das FormView Steuerelement Modi ändert, aber nachdem sich der Modus geändert hat. Dieses Ereignis wird häufig verwendet, um eine Aufgabe auszuführen, wenn sich das FormView Steuerelement ändert. |
ModeChanging | Tritt auf, wenn das FormView Steuerelement Modi ändert, aber bevor sich der Modus ändert. Dieses Ereignis wird häufig verwendet, um die Änderung des Modus abzubrechen. |
Hinweis Diese Ereignisse werden nicht ausgelöst, wenn Sie den Modus programmgesteuert mithilfe der ChangeMode Methode ändern.