DetailsView.ModeChanged イベント
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
DetailsView コントロールが編集、挿入、および読み取り専用の各モード間の切り替えを行おうとした場合に、CurrentMode プロパティの更新後に発生します。
public:
event EventHandler ^ ModeChanged;
public event EventHandler ModeChanged;
member this.ModeChanged : EventHandler
Public Custom Event ModeChanged As EventHandler
イベントの種類
例
次のコード例では、 イベントを使用 ModeChanged してヘッダー行に現在のモードを表示する方法を示します。
<%@ 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 CustomerDetailView_ModeChanged(Object sender, EventArgs e)
{
// Display the current mode in the header row.
switch (CustomerDetailView.CurrentMode)
{
case DetailsViewMode.Edit:
CustomerDetailView.HeaderText = "Edit Mode";
CustomerDetailView.HeaderStyle.ForeColor = System.Drawing.Color.Red;
CustomerDetailView.HeaderStyle.BackColor = System.Drawing.Color.LightGray;
break;
case DetailsViewMode.Insert:
CustomerDetailView.HeaderText = "Insert Mode";
CustomerDetailView.HeaderStyle.ForeColor = System.Drawing.Color.Green;
CustomerDetailView.HeaderStyle.BackColor = System.Drawing.Color.Yellow;
break;
case DetailsViewMode.ReadOnly:
CustomerDetailView.HeaderText = "Read-Only Mode";
CustomerDetailView.HeaderStyle.ForeColor = System.Drawing.Color.Blue;
CustomerDetailView.HeaderStyle.BackColor = System.Drawing.Color.White;
break;
default:
CustomerDetailView.HeaderText = "Error!";
break;
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>DetailsView ModeChanged Example</title>
</head>
<body>
<form id="Form1" runat="server">
<h3>DetailsView ModeChanged Example</h3>
<asp:detailsview id="CustomerDetailView"
datasourceid="DetailsViewSource"
datakeynames="CustomerID"
autogeneraterows="true"
autogenerateeditbutton="true"
autogenerateinsertbutton="true"
allowpaging="true"
headertext="Read-Only Mode"
onmodechanged="CustomerDetailView_ModeChanged"
runat="server">
<fieldheaderstyle backcolor="Navy"
forecolor="White"/>
<headerstyle forecolor="Blue"/>
</asp:detailsview>
<!-- 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" runat="server"
ConnectionString=
"<%$ ConnectionStrings:NorthWindConnectionString%>"
InsertCommand="INSERT INTO [Customers]([CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country]) VALUES (@CustomerID, @CompanyName, @Address, @City, @PostalCode, @Country)"
SelectCommand="Select [CustomerID], [CompanyName],
[Address], [City], [PostalCode], [Country] From
[Customers]">
</asp:SqlDataSource>
</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 CustomerDetailView_ModeChanged(ByVal sender As Object, ByVal e As EventArgs)
' Display the current mode in the header row.
Select Case CustomerDetailView.CurrentMode
Case DetailsViewMode.Edit
CustomerDetailView.HeaderText = "Edit Mode"
CustomerDetailView.HeaderStyle.ForeColor = System.Drawing.Color.Red
CustomerDetailView.HeaderStyle.BackColor = System.Drawing.Color.LightGray
Case DetailsViewMode.Insert
CustomerDetailView.HeaderText = "Insert Mode"
CustomerDetailView.HeaderStyle.ForeColor = System.Drawing.Color.Green
CustomerDetailView.HeaderStyle.BackColor = System.Drawing.Color.Yellow
Case DetailsViewMode.ReadOnly
CustomerDetailView.HeaderText = "Read-Only Mode"
CustomerDetailView.HeaderStyle.ForeColor = System.Drawing.Color.Blue
CustomerDetailView.HeaderStyle.BackColor = System.Drawing.Color.White
Case Else
CustomerDetailView.HeaderText = "Error!"
End Select
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>DetailsView ModeChanged Example</title>
</head>
<body>
<form id="Form1" runat="server">
<h3>DetailsView ModeChanged Example</h3>
<asp:detailsview id="CustomerDetailView"
datasourceid="DetailsViewSource"
datakeynames="CustomerID"
autogeneraterows="true"
autogenerateeditbutton="true"
autogenerateinsertbutton="true"
allowpaging="true"
headertext="Read-Only Mode"
onmodechanged="CustomerDetailView_ModeChanged"
runat="server">
<fieldheaderstyle backcolor="Navy"
forecolor="White"/>
<headerstyle forecolor="Blue"/>
</asp:detailsview>
<!-- 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" runat="server"
ConnectionString=
"<%$ ConnectionStrings:NorthWindConnectionString%>"
InsertCommand="INSERT INTO [Customers]([CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country]) VALUES (@CustomerID, @CompanyName, @Address, @City, @PostalCode, @Country)"
SelectCommand="Select [CustomerID], [CompanyName],
[Address], [City], [PostalCode], [Country] From
[Customers]">
</asp:SqlDataSource>
</form>
</body>
</html>
注釈
イベントは ModeChanged 、コントロールが編集モード、挿入モード、読み取り専用モードの間で変更を試みたが DetailsView 、 プロパティが更新された後に発生します CurrentMode 。 これにより、このイベントが発生するたびに、コントロールを別のコントロールと同期するなど、カスタム ルーチンを DetailsView 実行するイベント ハンドラーを提供できます。
イベントを処理する方法の詳細については、次を参照してください。処理とイベントの発生します。
適用対象
こちらもご覧ください
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET