MultiView.OnActiveViewChanged(EventArgs) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
引發 ActiveViewChanged 控制項的 MultiView 事件。
protected:
virtual void OnActiveViewChanged(EventArgs ^ e);
protected virtual void OnActiveViewChanged (EventArgs e);
abstract member OnActiveViewChanged : EventArgs -> unit
override this.OnActiveViewChanged : EventArgs -> unit
Protected Overridable Sub OnActiveViewChanged (e As EventArgs)
參數
範例
下列範例示範如何為控件的 MultiView 事件指定和撰寫事件處理程序ActiveViewChanged的程序代碼。 當使用中檢視變更時,會在頁面上的控件中 Label 顯示訊息。
注意
下列程式代碼範例會使用單一檔案程式代碼模型,如果直接複製到程式代碼後置檔案,可能無法正常運作。 此程式代碼範例必須複製到具有.aspx擴展名的空白文本檔。 如需 Web Forms 程式代碼模型的詳細資訊,請參閱 ASP.NET Web Forms 頁面代碼模型。
<%@ 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">
protected void MultiView1_ActiveViewChanged(object sender, EventArgs e)
{
String activeView;
activeView = MultiView1.GetActiveView().ID;
ActiveViewLabel.Text = "The ActiveViewChanged event was raised." +
"<br/>" + "The active view is set to " + activeView;
}
protected void LinkButton_Command(object sender, CommandEventArgs e)
{
// Determine which link button was clicked
// and set the active view to
// the view selected by the user.
switch (e.CommandArgument.ToString())
{
case "DefaultView":
MultiView1.SetActiveView(DefaultView);
break;
case "News":
MultiView1.SetActiveView(NewsView);
break;
case "Shopping":
MultiView1.SetActiveView(ShoppingView);
break;
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<h3>MultiView.ActiveViewChangedEvent Example</h3>
<asp:MultiView id="MultiView1"
ActiveViewIndex="0"
OnActiveViewChanged="MultiView1_ActiveViewChanged"
runat="Server">
<asp:View id="DefaultView"
runat="Server">
<asp:Panel id="DefaultViewPanel"
Width="330px"
BackColor="#C0C0FF"
BorderColor="#404040"
BorderStyle="Double"
runat="Server">
<asp:Label id="DefaultLabel1"
Font-bold="true"
Font-size="14"
Text="The Default View"
runat="Server"
AssociatedControlID="DefaultView">
</asp:Label>
<asp:BulletedList id="DefaultBulletedList1"
BulletStyle="Disc"
DisplayMode="Hyperlink"
Target="_blank"
runat="Server">
<asp:ListItem
Value="http://www.microsoft.com">Today's Weather</asp:ListItem>
<asp:ListItem
Value="http://www.microsoft.com">Today's Stock Quotes</asp:ListItem>
<asp:ListItem
Value="http://www.microsoft.com">Today's News Headlines</asp:ListItem>
<asp:ListItem
Value="http://www.microsoft.com">Today's Featured Shopping</asp:ListItem>
</asp:BulletedList>
<hr />
<asp:Label id="DefaultLabel2"
Font-size="12"
Text="Click a link to display a different view:"
runat="Server">
</asp:Label><br />
<asp:LinkButton id="Default_NewsLink"
Text="Go to News View"
OnCommand="LinkButton_Command"
CommandArgument="News"
CommandName="Link"
Width="150px"
runat="Server">
</asp:LinkButton>
<asp:LinkButton id="Default_ShoppingLink"
Text="Go to Shopping View"
OnCommand="LinkButton_Command"
CommandArgument="Shopping"
CommandName="Link"
Width="150px"
runat="server">
</asp:LinkButton><br /><br />
</asp:Panel>
</asp:View>
<asp:View id="NewsView"
runat="Server">
<asp:Panel id="NewsPanel1"
Width="330px"
BackColor="#C0FFC0"
BorderColor="#404040"
BorderStyle="Double"
runat="Server">
<asp:Label id="NewsLabel1"
Font-bold="true"
Font-size="14"
Text="The News View"
runat="Server"
AssociatedControlID="NewsView">
</asp:Label>
<asp:BulletedList id="NewsBulletedlist1"
BulletStyle="Disc"
DisplayMode="Hyperlink"
Target="_blank"
runat="Server">
<asp:ListItem Value="http://www.microsoft.com">Today's International Headlines</asp:ListItem>
<asp:ListItem Value="http://www.microsoft.com">Today's National Headlines</asp:ListItem>
<asp:ListItem Value="http://www.microsoft.com">Today's Local News</asp:ListItem>
</asp:BulletedList>
<hr />
<asp:Label id="NewsLabel2"
Font-size="12"
Text="Click a link to display a different view:"
runat="Server">
</asp:Label><br />
<asp:LinkButton id="News_DefaultLink"
Text="Go to the Default View"
OnCommand="LinkButton_Command"
CommandArgument="DefaultView"
CommandName="Link"
Width="150px"
runat="Server">
</asp:LinkButton>
<asp:LinkButton id="News_ShoppingLink"
Text="Go to Shopping View"
OnCommand="LinkButton_Command"
CommandArgument="Shopping"
CommandName="Link"
Width="150px"
runat="Server">
</asp:LinkButton><br /><br />
</asp:Panel>
</asp:View>
<asp:View id="ShoppingView"
runat="Server">
<asp:Panel id="ShoppingPanel1"
Width="330px"
BackColor="#FFFFC0"
BorderColor="#404040"
BorderStyle="Double"
runat="Server">
<asp:Label id="ShoppingLabel1"
Font-Bold="true"
Font-size="14"
Text="The Shopping View"
runat="Server"
AssociatedControlID="ShoppingView">
</asp:Label>
<asp:BulletedList id="ShoppingBulletedlist1"
BulletStyle="Disc"
DisplayMode="Hyperlink"
Target="_blank"
runat="Server">
<asp:ListItem Value="http://www.microsoft.com">Shop for Home and Garden </asp:ListItem>
<asp:ListItem Value="http://www.microsoft.com">Shop for Women's Fashions</asp:ListItem>
<asp:ListItem Value="http://www.microsoft.com">Shop for Men's Fashions</asp:ListItem>
</asp:BulletedList>
<hr />
<asp:Label id="ShoppingLabel2"
Font-size="12"
Text="Click a link to display a different view:"
runat="Server">
</asp:Label><br />
<asp:LinkButton id="Shopping_DefaultLink"
Text="Go to the Default View"
OnCommand="LinkButton_Command"
CommandArgument="DefaultView"
CommandName="Link"
Width="150px"
runat="Server">
</asp:LinkButton>
<asp:LinkButton id="Shopping_NewsLink"
Text="Go to News View"
OnCommand="LinkButton_Command"
CommandArgument="News"
CommandName="Link"
Width="150px"
runat="Server">
</asp:LinkButton><br /><br />
</asp:Panel>
</asp:View>
</asp:MultiView>
<hr />
<asp:Label id="ActiveViewLabel"
BorderStyle="None"
Font-Size="Small"
BackColor="#ffff66"
runat="Server" >
</asp:Label>
</div>
</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 MultiView1_ActiveViewChanged(ByVal sender As Object, ByVal e As System.EventArgs)
Dim activeView As String
activeView = MultiView1.GetActiveView().ID
ActiveViewLabel.Text = "The ActiveViewChanged event was raised." + _
"<br/>" + "The active view is set to " + activeView
End Sub
Sub LinkButton_Command(ByVal sender As Object, ByVal e As CommandEventArgs)
' Determine which link button was clicked
' and set the active view to
' the view selected by the user.
Select Case (e.CommandArgument.ToString())
Case "DefaultView"
MultiView1.SetActiveView(DefaultView)
Case "News"
MultiView1.SetActiveView(NewsView)
Case "Shopping"
MultiView1.SetActiveView(ShoppingView)
End Select
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<h3>MultiView.ActiveViewChangedEvent Example</h3>
<asp:MultiView id="MultiView1"
ActiveViewIndex="0"
OnActiveViewChanged="MultiView1_ActiveViewChanged"
runat="Server">
<asp:View id="DefaultView"
runat="Server">
<asp:Panel id="DefaultViewPanel"
Width="330px"
BackColor="#C0C0FF"
BorderColor="#404040"
BorderStyle="Double"
runat="Server">
<asp:Label id="DefaultLabel1"
Font-bold="true"
Font-size="14"
Text="The Default View"
runat="Server"
AssociatedControlID="DefaultView">
</asp:Label>
<asp:BulletedList id="DefaultBulletedList1"
BulletStyle="Disc"
DisplayMode="Hyperlink"
Target="_blank"
runat="Server">
<asp:ListItem
Value="http://www.microsoft.com">Today's Weather</asp:ListItem>
<asp:ListItem
Value="http://www.microsoft.com">Today's Stock Quotes</asp:ListItem>
<asp:ListItem
Value="http://www.microsoft.com">Today's News Headlines</asp:ListItem>
<asp:ListItem
Value="http://www.microsoft.com">Today's Featured Shopping</asp:ListItem>
</asp:BulletedList>
<hr />
<asp:Label id="DefaultLabel2"
Font-size="12"
Text="Click a link to display a different view:"
runat="Server">
</asp:Label><br />
<asp:LinkButton id="Default_NewsLink"
Text="Go to News View"
OnCommand="LinkButton_Command"
CommandArgument="News"
CommandName="Link"
Width="150px"
runat="Server">
</asp:LinkButton>
<asp:LinkButton id="Default_ShoppingLink"
Text="Go to Shopping View"
OnCommand="LinkButton_Command"
CommandArgument="Shopping"
CommandName="Link"
Width="150px"
runat="server">
</asp:LinkButton><br /><br />
</asp:Panel>
</asp:View>
<asp:View id="NewsView"
runat="Server">
<asp:Panel id="NewsPanel1"
Width="330px"
BackColor="#C0FFC0"
BorderColor="#404040"
BorderStyle="Double"
runat="Server">
<asp:Label id="NewsLabel1"
Font-bold="true"
Font-size="14"
Text="The News View"
runat="Server"
AssociatedControlID="NewsView">
</asp:Label>
<asp:BulletedList id="NewsBulletedlist1"
BulletStyle="Disc"
DisplayMode="Hyperlink"
Target="_blank"
runat="Server">
<asp:ListItem Value="http://www.microsoft.com">Today's International Headlines</asp:ListItem>
<asp:ListItem Value="http://www.microsoft.com">Today's National Headlines</asp:ListItem>
<asp:ListItem Value="http://www.microsoft.com">Today's Local News</asp:ListItem>
</asp:BulletedList>
<hr />
<asp:Label id="NewsLabel2"
Font-size="12"
Text="Click a link to display a different view:"
runat="Server">
</asp:Label><br />
<asp:LinkButton id="News_DefaultLink"
Text="Go to the Default View"
OnCommand="LinkButton_Command"
CommandArgument="DefaultView"
CommandName="Link"
Width="150px"
runat="Server">
</asp:LinkButton>
<asp:LinkButton id="News_ShoppingLink"
Text="Go to Shopping View"
OnCommand="LinkButton_Command"
CommandArgument="Shopping"
CommandName="Link"
Width="150px"
runat="Server">
</asp:LinkButton><br /><br />
</asp:Panel>
</asp:View>
<asp:View id="ShoppingView"
runat="Server">
<asp:Panel id="ShoppingPanel1"
Width="330px"
BackColor="#FFFFC0"
BorderColor="#404040"
BorderStyle="Double"
runat="Server">
<asp:Label id="ShoppingLabel1"
Font-Bold="true"
Font-size="14"
Text="The Shopping View"
runat="Server"
AssociatedControlID="ShoppingView">
</asp:Label>
<asp:BulletedList id="ShoppingBulletedlist1"
BulletStyle="Disc"
DisplayMode="Hyperlink"
Target="_blank"
runat="Server">
<asp:ListItem Value="http://www.microsoft.com">Shop for Home and Garden </asp:ListItem>
<asp:ListItem Value="http://www.microsoft.com">Shop for Women's Fashions</asp:ListItem>
<asp:ListItem Value="http://www.microsoft.com">Shop for Men's Fashions</asp:ListItem>
</asp:BulletedList>
<hr />
<asp:Label id="ShoppingLabel2"
Font-size="12"
Text="Click a link to display a different view:"
runat="Server">
</asp:Label><br />
<asp:LinkButton id="Shopping_DefaultLink"
Text="Go to the Default View"
OnCommand="LinkButton_Command"
CommandArgument="DefaultView"
CommandName="Link"
Width="150px"
runat="Server">
</asp:LinkButton>
<asp:LinkButton id="Shopping_NewsLink"
Text="Go to News View"
OnCommand="LinkButton_Command"
CommandArgument="News"
CommandName="Link"
Width="150px"
runat="Server">
</asp:LinkButton><br /><br />
</asp:Panel>
</asp:View>
</asp:MultiView>
<hr />
<asp:Label id="ActiveViewLabel"
BorderStyle="None"
Font-Size="Small"
BackColor="#ffff66"
runat="Server" >
</asp:Label>
</div>
</form>
</body>
</html>
備註
ActiveViewChanged當控件內的MultiView控件在貼文到伺服器之間變更時View,就會引發 事件,而且您可以為此事件提供自定義處理程式。
引發事件會透過委派叫用此事件處理常式。 如需詳細資訊,請參閱 如何:取用Web Forms應用程式中的事件。
OnActiveViewChanged 方法也允許衍生類別處理事件,而不用附加委派。 這是在衍生類別中處理事件的慣用技巧。
給繼承者的注意事項
當在衍生類別中覆寫 OnActiveViewChanged(EventArgs) 時,請確定呼叫基底類別的 OnActiveViewChanged(EventArgs) 方法,使已註冊的委派能接收到事件。