WebPartZoneBase.HelpVerb Eigenschap
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee haalt u een verwijzing op naar een WebPartVerb object dat wordt gebruikt voor toegang tot Help-inhoud voor WebPart besturingselementen in een zone.
public:
virtual property System::Web::UI::WebControls::WebParts::WebPartVerb ^ HelpVerb { System::Web::UI::WebControls::WebParts::WebPartVerb ^ get(); };
[System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)]
public virtual System.Web.UI.WebControls.WebParts.WebPartVerb HelpVerb { get; }
[<System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)>]
member this.HelpVerb : System.Web.UI.WebControls.WebParts.WebPartVerb
Public Overridable ReadOnly Property HelpVerb As WebPartVerb
Waarde van eigenschap
Een WebPartVerb functie waarmee gebruikers toegang kunnen krijgen tot Help-inhoud op de WebPart besturingselementen in een zone.
- Kenmerken
Voorbeelden
In het volgende codevoorbeeld ziet u het gebruik van de HelpVerb eigenschap op een WebPartZone besturingselement.
Naast de volgende code hebt u een aangepast besturingselement WebPart nodig om het codevoorbeeld te laten werken. U kunt uw eigen beheer gebruiken of de code gebruiken voor het aangepaste TextDisplayWebPart besturingselement in het gedeelte Voorbeeld van het WebPart klassenoverzicht.
Dit codevoorbeeld bevat een gebruikersbeheer waarmee u weergavemodi op een webpagina kunt wijzigen. Zie Walkthrough: Weergavemodi wijzigen op een pagina met webonderdelen voor meer informatie over weergavemodi en de broncode in dit besturingselement.
<%@ control language="C#" classname="DisplayModeMenuCS"%>
<script runat="server">
// Use a field to reference the current WebPartManager.
WebPartManager _manager;
void Page_Init(object sender, EventArgs e)
{
Page.InitComplete += new EventHandler(InitComplete);
}
void InitComplete(object sender, System.EventArgs e)
{
_manager = WebPartManager.GetCurrentWebPartManager(Page);
String browseModeName = WebPartManager.BrowseDisplayMode.Name;
// Fill the dropdown with the names of supported display modes.
foreach (WebPartDisplayMode mode in _manager.SupportedDisplayModes)
{
String modeName = mode.Name;
// Make sure a mode is enabled before adding it.
if (mode.IsEnabled(_manager))
{
ListItem item = new ListItem(modeName, modeName);
DisplayModeDropdown.Items.Add(item);
}
}
// If shared scope is allowed for this user, display the scope-switching
// UI and select the appropriate radio button for the current user scope.
if (_manager.Personalization.CanEnterSharedScope)
{
Panel2.Visible = true;
if (_manager.Personalization.Scope == PersonalizationScope.User)
RadioButton1.Checked = true;
else
RadioButton2.Checked = true;
}
}
// Change the page to the selected display mode.
void DisplayModeDropdown_SelectedIndexChanged(object sender, EventArgs e)
{
String selectedMode = DisplayModeDropdown.SelectedValue;
WebPartDisplayMode mode = _manager.SupportedDisplayModes[selectedMode];
if (mode != null)
_manager.DisplayMode = mode;
}
// Set the selected item equal to the current display mode.
void Page_PreRender(object sender, EventArgs e)
{
ListItemCollection items = DisplayModeDropdown.Items;
int selectedIndex =
items.IndexOf(items.FindByText(_manager.DisplayMode.Name));
DisplayModeDropdown.SelectedIndex = selectedIndex;
}
// Reset all of a user's personalization data for the page.
protected void LinkButton1_Click(object sender, EventArgs e)
{
_manager.Personalization.ResetPersonalizationState();
}
// If not in User personalization scope, toggle into it.
protected void RadioButton1_CheckedChanged(object sender, EventArgs e)
{
if (_manager.Personalization.Scope == PersonalizationScope.Shared)
_manager.Personalization.ToggleScope();
}
// If not in Shared scope, and if user is allowed, toggle the scope.
protected void RadioButton2_CheckedChanged(object sender, EventArgs e)
{
if (_manager.Personalization.CanEnterSharedScope &&
_manager.Personalization.Scope == PersonalizationScope.User)
_manager.Personalization.ToggleScope();
}
</script>
<div>
<asp:Panel ID="Panel1" runat="server"
Borderwidth="1"
Width="230"
BackColor="lightgray"
Font-Names="Verdana, Arial, Sans Serif" >
<asp:Label ID="Label1" runat="server"
Text=" Display Mode"
Font-Bold="true"
Font-Size="8"
Width="120"
AssociatedControlID="DisplayModeDropdown"/>
<asp:DropDownList ID="DisplayModeDropdown" runat="server"
AutoPostBack="true"
Width="120"
OnSelectedIndexChanged="DisplayModeDropdown_SelectedIndexChanged" />
<asp:LinkButton ID="LinkButton1" runat="server"
Text="Reset User State"
ToolTip="Reset the current user's personalization data for the page."
Font-Size="8"
OnClick="LinkButton1_Click" />
<asp:Panel ID="Panel2" runat="server"
GroupingText="Personalization Scope"
Font-Bold="true"
Font-Size="8"
Visible="false" >
<asp:RadioButton ID="RadioButton1" runat="server"
Text="User"
AutoPostBack="true"
GroupName="Scope" OnCheckedChanged="RadioButton1_CheckedChanged" />
<asp:RadioButton ID="RadioButton2" runat="server"
Text="Shared"
AutoPostBack="true"
GroupName="Scope"
OnCheckedChanged="RadioButton2_CheckedChanged" />
</asp:Panel>
</asp:Panel>
</div>
<%@ control language="vb" classname="DisplayModeMenuVB"%>
<script runat="server">
' Use a field to reference the current WebPartManager.
Dim _manager As WebPartManager
Sub Page_Init(ByVal sender As Object, ByVal e As EventArgs)
AddHandler Page.InitComplete, AddressOf InitComplete
End Sub
Sub InitComplete(ByVal sender As Object, ByVal e As System.EventArgs)
_manager = WebPartManager.GetCurrentWebPartManager(Page)
Dim browseModeName As String = WebPartManager.BrowseDisplayMode.Name
' Fill the dropdown with the names of supported display modes.
Dim mode As WebPartDisplayMode
For Each mode In _manager.SupportedDisplayModes
Dim modeName As String = mode.Name
' Make sure a mode is enabled before adding it.
If mode.IsEnabled(_manager) Then
Dim item As New ListItem(modeName, modeName)
DisplayModeDropdown.Items.Add(item)
End If
Next mode
' If shared scope is allowed for this user, display the scope-switching
' UI and select the appropriate radio button for the current user scope.
If _manager.Personalization.CanEnterSharedScope Then
Panel2.Visible = True
If _manager.Personalization.Scope = PersonalizationScope.User Then
RadioButton1.Checked = True
Else
RadioButton2.Checked = True
End If
End If
End Sub
' Change the page to the selected display mode.
Sub DisplayModeDropdown_SelectedIndexChanged(ByVal sender As Object, _
ByVal e As EventArgs)
Dim selectedMode As String = DisplayModeDropdown.SelectedValue
Dim mode As WebPartDisplayMode = _
_manager.SupportedDisplayModes(selectedMode)
If Not (mode Is Nothing) Then
_manager.DisplayMode = mode
End If
End Sub
' Set the selected item equal to the current display mode.
Sub Page_PreRender(ByVal sender As Object, ByVal e As EventArgs)
Dim items As ListItemCollection = DisplayModeDropdown.Items
Dim selectedIndex As Integer = _
items.IndexOf(items.FindByText(_manager.DisplayMode.Name))
DisplayModeDropdown.SelectedIndex = selectedIndex
End Sub
' Reset all of a user's personalization data for the page.
Protected Sub LinkButton1_Click(ByVal sender As Object, _
ByVal e As EventArgs)
_manager.Personalization.ResetPersonalizationState()
End Sub
' If not in User personalization scope, toggle into it.
Protected Sub RadioButton1_CheckedChanged(ByVal sender As Object, _
ByVal e As EventArgs)
If _manager.Personalization.Scope = PersonalizationScope.Shared Then
_manager.Personalization.ToggleScope()
End If
End Sub
' If not in Shared scope, and if user is allowed, toggle the scope.
Protected Sub RadioButton2_CheckedChanged(ByVal sender As Object, _
ByVal e As EventArgs)
If _manager.Personalization.CanEnterSharedScope AndAlso _
_manager.Personalization.Scope = PersonalizationScope.User Then
_manager.Personalization.ToggleScope()
End If
End Sub
</script>
<div>
<asp:Panel ID="Panel1" runat="server"
Borderwidth="1"
Width="230"
BackColor="lightgray"
Font-Names="Verdana, Arial, Sans Serif" >
<asp:Label ID="Label1" runat="server"
Text=" Display Mode"
Font-Bold="true"
Font-Size="8"
Width="120"
AssociatedControlID="DisplayModeDropdown"/>
<asp:DropDownList ID="DisplayModeDropdown" runat="server"
AutoPostBack="true"
Width="120"
OnSelectedIndexChanged="DisplayModeDropdown_SelectedIndexChanged" />
<asp:LinkButton ID="LinkButton1" runat="server"
Text="Reset User State"
ToolTip="Reset the current user's personalization data for the page."
Font-Size="8"
OnClick="LinkButton1_Click" />
<asp:Panel ID="Panel2" runat="server"
GroupingText="Personalization Scope"
Font-Bold="true"
Font-Size="8"
Visible="false" >
<asp:RadioButton ID="RadioButton1" runat="server"
Text="User"
AutoPostBack="true"
GroupName="Scope" OnCheckedChanged="RadioButton1_CheckedChanged" />
<asp:RadioButton ID="RadioButton2" runat="server"
Text="Shared"
AutoPostBack="true"
GroupName="Scope"
OnCheckedChanged="RadioButton2_CheckedChanged" />
</asp:Panel>
</asp:Panel>
</div>
Dit codevoorbeeld bevat ook een HTML-pagina die Help-inhoud voor het TextDisplayWebPart besturingselement kan bevatten. Als u dit voorbeeld wilt laten werken, moet u de volgende code opslaan in een bestand met de naam Textwebparthelp.htm en deze in dezelfde map van uw site plaatsen als de .aspx pagina waarop het TextDisplayWebPart besturingselement wordt gehost.
<html>
<head runat="server">
<title>Text Content WebPart Help</title>
</head>
<body>
<div>
<h1>Text Content WebPart Help</h1>
To make the WebPart control work...
</div>
</body>
</html>
Het codevoorbeeld bevat ook de volgende gedeeltelijke klasse die de code bevat voor het afhandelen van de gebeurtenissen op de pagina .aspx.
using System;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
public partial class WebPartZoneBase_verbs : System.Web.UI.Page
{
protected void Page_Load(Object sender, EventArgs e)
{
if (WebPartZone1.WebParts.Count == 0)
Table1.Visible = false;
else
Table1.Visible = true;
// Enable all verbs on the first page load.
if (!IsPostBack)
{
foreach (ListItem item in CheckBoxList1.Items)
item.Selected = true;
CheckBoxList1_SelectedItemIndexChanged(sender, e);
}
}
protected void CheckBoxList1_SelectedItemIndexChanged(Object sender, EventArgs e)
{
foreach (ListItem item in CheckBoxList1.Items)
{
WebPartVerb theVerb;
switch (item.Value)
{
case "close":
theVerb = WebPartZone1.CloseVerb;
break;
case "export":
theVerb = WebPartZone1.ExportVerb;
break;
case "delete":
theVerb = WebPartZone1.DeleteVerb;
break;
case "minimize":
theVerb = WebPartZone1.MinimizeVerb;
break;
case "restore":
theVerb = WebPartZone1.RestoreVerb;
break;
default:
theVerb = null;
break;
}
if (item.Selected)
theVerb.Enabled = true;
else
theVerb.Enabled = false;
}
}
}
Imports System.Text
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Web.UI.WebControls.WebParts
Public Partial Class WebPartZoneBase_verbs
Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As [Object], ByVal e As EventArgs)
If WebPartZone1.WebParts.Count = 0 Then
Table1.Visible = False
Else
Table1.Visible = True
End If
' Enable all verbs on the first page load.
If Not IsPostBack Then
Dim item As ListItem
For Each item In CheckBoxList1.Items
item.Selected = True
Next item
CheckBoxList1_SelectedItemIndexChanged(sender, e)
End If
End Sub
Protected Sub CheckBoxList1_SelectedItemIndexChanged(ByVal sender As [Object], ByVal e As EventArgs)
Dim item As ListItem
For Each item In CheckBoxList1.Items
Dim theVerb As WebPartVerb
Select Case item.Value
Case "close"
theVerb = WebPartZone1.CloseVerb
Case "export"
theVerb = WebPartZone1.ExportVerb
Case "delete"
theVerb = WebPartZone1.DeleteVerb
Case "minimize"
theVerb = WebPartZone1.MinimizeVerb
Case "restore"
theVerb = WebPartZone1.RestoreVerb
Case Else
theVerb = Nothing
End Select
If item.Selected Then
theVerb.Enabled = True
Else
theVerb.Enabled = False
End If
Next item
End Sub
End Class
Het andere deel van het codevoorbeeld is de .aspx pagina waarop het TextDisplayWebPart besturingselement wordt gehost en het gebruik van de HelpVerb eigenschap wordt gedemonstreert. U ziet dat boven aan de pagina een <@ Register %> declaratie wordt gebruikt om te verwijzen naar het gecompileerde TextDisplayWebPart besturingselement, dat moet worden geplaatst in een submap met de naam Bin.
<%@ Page Language="C#"
Codefile="webpartzonebase_verbs.cs"
Inherits="WebPartZoneBase_verbs" %>
<%@ register TagPrefix="uc1"
TagName="DisplayModeMenuCS"
Src="DisplayModeMenuCS.ascx" %>
<%@ register tagprefix="aspSample"
Namespace="Samples.AspNet.CS.Controls"
Assembly="TextDisplayWebPartCS" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>WebPartZoneBase Example</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:WebPartManager ID="WebPartManager1" Runat="server" />
<uc1:DisplayModeMenuCS ID="DisplayModeMenu1" runat="server" />
<asp:WebPartZone ID="WebPartZone1" Runat="server">
<CloseVerb Text="Close WebPart" />
<HelpVerb Text="View Help" />
<ExportVerb Text="Export WebPart Definition" />
<DeleteVerb Text ="Delete WebPart" />
<MinimizeVerb Description="Minimize the control" />
<RestoreVerb Description="Restore the control" />
<ZoneTemplate>
</ZoneTemplate>
</asp:WebPartZone>
<asp:CatalogZone ID="CatalogZone1" Runat="server">
<ZoneTemplate>
<asp:DeclarativeCatalogPart ID="DeclarativeCatalogPart1"
Runat="server">
<WebPartsTemplate>
<aspSample:TextDisplayWebPart
runat="server"
id="textwebpart"
title = "Text Content WebPart"
width="350px"
AllowClose="true"
ExportMode="All"
HelpMode="Modal"
HelpUrl="TextWebPartHelp.htm" />
</WebPartsTemplate>
</asp:DeclarativeCatalogPart>
<asp:PageCatalogPart ID="PageCatalogPart1" Runat="server" />
</ZoneTemplate>
</asp:CatalogZone>
<asp:Table ID="Table1" Runat="server">
<asp:TableRow>
<asp:TableCell>
<asp:CheckBoxList ID="CheckBoxList1" Runat="server"
AutoPostBack="true"
OnSelectedIndexChanged="CheckBoxList1_SelectedItemIndexChanged">
<asp:ListItem Value="close">Close Verb Enabled</asp:ListItem>
<asp:ListItem Value="delete">Delete Verb Enabled</asp:ListItem>
<asp:ListItem Value="export">Export Verb Enabled</asp:ListItem>
<asp:ListItem Value="minimize">Minimize Verb Enabled</asp:ListItem>
<asp:ListItem Value="restore">Restore Verb Enabled</asp:ListItem>
</asp:CheckBoxList>
</asp:TableCell>
</asp:TableRow>
</asp:Table>
</div>
</form>
</body>
</html>
<%@ Page Language="VB"
Codefile="webpartzonebase_verbs.vb"
Inherits="WebPartZoneBase_verbs" %>
<%@ register TagPrefix="uc1"
TagName="DisplayModeMenuVB"
Src="DisplayModeMenuVB.ascx" %>
<%@ register tagprefix="aspSample"
Namespace="Samples.AspNet.VB.Controls"
Assembly="TextDisplayWebPartVB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>WebPartZoneBase Example</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:WebPartManager ID="WebPartManager1" Runat="server" />
<uc1:DisplayModeMenuVB ID="DisplayModeMenu1" runat="server" />
<asp:WebPartZone ID="WebPartZone1" Runat="server">
<CloseVerb Text="Close WebPart" />
<HelpVerb Text="View Help" />
<ExportVerb Text="Export WebPart Definition" />
<DeleteVerb Text ="Delete WebPart" />
<MinimizeVerb Description="Minimize the control" />
<RestoreVerb Description="Restore the control" />
<ZoneTemplate>
</ZoneTemplate>
</asp:WebPartZone>
<asp:CatalogZone ID="CatalogZone1" Runat="server">
<ZoneTemplate>
<asp:DeclarativeCatalogPart ID="DeclarativeCatalogPart1"
Runat="server">
<WebPartsTemplate>
<aspSample:TextDisplayWebPart
runat="server"
id="textwebpart"
title = "Text Content WebPart"
width="350px"
AllowClose="true"
ExportMode="All"
HelpMode="Modal"
HelpUrl="TextWebPartHelp.htm" />
</WebPartsTemplate>
</asp:DeclarativeCatalogPart>
<asp:PageCatalogPart ID="PageCatalogPart1" Runat="server" />
</ZoneTemplate>
</asp:CatalogZone>
<asp:Table ID="Table1" Runat="server">
<asp:TableRow>
<asp:TableCell>
<asp:CheckBoxList ID="CheckBoxList1" Runat="server"
AutoPostBack="true"
OnSelectedIndexChanged="CheckBoxList1_SelectedItemIndexChanged">
<asp:ListItem Value="close">Close Verb Enabled</asp:ListItem>
<asp:ListItem Value="delete">Delete Verb Enabled</asp:ListItem>
<asp:ListItem Value="export">Export Verb Enabled</asp:ListItem>
<asp:ListItem Value="minimize">Minimize Verb Enabled</asp:ListItem>
<asp:ListItem Value="restore">Restore Verb Enabled</asp:ListItem>
</asp:CheckBoxList>
</asp:TableCell>
</asp:TableRow>
</asp:Table>
</div>
</form>
</body>
</html>
Houd er ook rekening mee dat de HelpVerb eigenschap declaratief wordt gebruikt voor het <asp:WebPartZone> element om de tekst voor het werkwoord in te stellen, zoals wordt weergegeven in het volgende codevoorbeeld.
<asp:WebPartZone ID="WebPartZone1" Runat="server">
<CloseVerb Text="Close WebPart" />
<HelpVerb Text="View Help" />
<ExportVerb Text="Export WebPart Definition" />
<DeleteVerb Text ="Delete WebPart" />
<MinimizeVerb Description="Minimize the control" />
<RestoreVerb Description="Restore the control" />
<ZoneTemplate>
</ZoneTemplate>
</asp:WebPartZone>
<asp:WebPartZone ID="WebPartZone1" Runat="server">
<CloseVerb Text="Close WebPart" />
<HelpVerb Text="View Help" />
<ExportVerb Text="Export WebPart Definition" />
<DeleteVerb Text ="Delete WebPart" />
<MinimizeVerb Description="Minimize the control" />
<RestoreVerb Description="Restore the control" />
<ZoneTemplate>
</ZoneTemplate>
</asp:WebPartZone>
Let ten slotte op in het volgende codevoorbeeld dat de HelpUrl eigenschap is ingesteld op het <aspSample:TextDisplayPart> element om de URL naar het Help-bestand op te geven.
<asp:CatalogZone ID="CatalogZone1" Runat="server">
<ZoneTemplate>
<asp:DeclarativeCatalogPart ID="DeclarativeCatalogPart1"
Runat="server">
<WebPartsTemplate>
<aspSample:TextDisplayWebPart
runat="server"
id="textwebpart"
title = "Text Content WebPart"
width="350px"
AllowClose="true"
ExportMode="All"
HelpMode="Modal"
HelpUrl="TextWebPartHelp.htm" />
</WebPartsTemplate>
</asp:DeclarativeCatalogPart>
<asp:PageCatalogPart ID="PageCatalogPart1" Runat="server" />
</ZoneTemplate>
</asp:CatalogZone>
<asp:CatalogZone ID="CatalogZone1" Runat="server">
<ZoneTemplate>
<asp:DeclarativeCatalogPart ID="DeclarativeCatalogPart1"
Runat="server">
<WebPartsTemplate>
<aspSample:TextDisplayWebPart
runat="server"
id="textwebpart"
title = "Text Content WebPart"
width="350px"
AllowClose="true"
ExportMode="All"
HelpMode="Modal"
HelpUrl="TextWebPartHelp.htm" />
</WebPartsTemplate>
</asp:DeclarativeCatalogPart>
<asp:PageCatalogPart ID="PageCatalogPart1" Runat="server" />
</ZoneTemplate>
</asp:CatalogZone>
Nadat u de pagina in een browser hebt geladen, klikt u op het menu-item Catalogusmodus in de vervolgkeuzelijst Weergavemodus om de pagina over te schakelen naar de catalogusweergavemodus. Voeg het TextDisplayWebPart besturingselement toe aan de pagina, sluit de catalogus en retourneer de pagina naar de normale bladermodus. Als u in de titelbalk van het TextDisplayWebPart besturingselement op de vervolgkeuzelijst met werkwoorden klikt, hebt u toegang tot het Help-werkwoord om de Help-pagina te openen.
Opmerkingen
De HelpVerb eigenschap kan declaratief of programmatisch worden geopend. U kunt deze declaratief openen binnen een zone met behulp van het <asp:HelpVerb> element om de tekst, de beschrijving, of het werkwoord is ingeschakeld en andere kenmerken in te stellen. Het is echter niet nodig om een Help-werkwoord voor een zone te declareren, omdat deze standaard is ingeschakeld. De enige stap die nodig is om een Help-werkwoord in te schakelen voor weergave in het menu Werkwoorden van WebPart besturingselementen in een zone tijdens runtime, is het toewijzen van een waarde aan de HelpUrl eigenschap voor afzonderlijke WebPart besturingselementen.