MobilePage.AllowCustomAttributes Właściwość

Definicja

Pobiera wartość wskazującą, czy kontrolki na stronie mogą mieć zdefiniowane atrybuty niestandardowe. Wartość domyślna to wartość allowCustomAttributes atrybutu <mobilecontrols> sekcji pliku Web.config. Ten interfejs API jest nieaktualny. Aby uzyskać informacje na temat tworzenia ASP.NET aplikacji mobilnych, zobacz Mobile Apps & Sites with ASP.NET (Aplikacje mobilne & Sites with ASP.NET).

public:
 property bool AllowCustomAttributes { bool get(); void set(bool value); };
[System.ComponentModel.Bindable(false)]
[System.ComponentModel.Browsable(false)]
public bool AllowCustomAttributes { get; set; }
[<System.ComponentModel.Bindable(false)>]
[<System.ComponentModel.Browsable(false)>]
member this.AllowCustomAttributes : bool with get, set
Public Property AllowCustomAttributes As Boolean

Wartość właściwości

true jeśli kontrolki na stronie mogą mieć zdefiniowane atrybuty niestandardowe; w przeciwnym razie , false.

Atrybuty

Przykłady

W poniższym przykładzie pokazano, jak użyć AllowCustomAttributes właściwości w celu włączenia atrybutu niestandardowego AccessKey w obiekcie Command.

Uwaga

Poniższy przykładowy kod używa modelu kodu pojedynczego pliku i może nie działać poprawnie, jeśli skopiujesz go bezpośrednio do pliku za pomocą kodu. Ten przykładowy kod należy skopiować do pustego pliku tekstowego z rozszerzeniem aspx. Aby uzyskać więcej informacji, zobacz model kodu strony ASP.NET Web Forms.

<%@ Page Language="C#" 
    Inherits="System.Web.UI.MobileControls.MobilePage" %>
<%@ Register TagPrefix="mobile" 
    Namespace="System.Web.UI.MobileControls" 
    Assembly="System.Web.Mobile" %>
<%@ Import Namespace="System.Web.Mobile" %>

<script runat="server">
    // <Snippet2>
    private void Command_OnClick(object sender, EventArgs e)
    {
        // Display the other form
        if (ActiveForm.ID == "Form1")
            ActiveForm = Form2;
        else
            ActiveForm = Form1;
    }
    // </Snippet2>

    public bool isAccessKey(MobileCapabilities caps, 
        string optValue)
    {
        // Determine if the browser is not a Web crawler 
        // and can use access keys
        if (!caps.Crawler && caps.SupportsAccesskeyAttribute)
            return true;
        return false;
    }
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<body>
    <mobile:Form runat="server" id="Form1" >
        <mobile:Label Runat="server">This is Form1</mobile:Label>
        <mobile:Command id="cmd1" runat="server" Text="No AccessKey" 
            onClick="Command_OnClick">
            <DeviceSpecific>
               <Choice Filter="isAccessKey" Text="AccessKey is 1"/>
            </DeviceSpecific>
        </mobile:Command>
        <mobile:Label id="Label1" runat="server" />
    </mobile:Form>
    <mobile:Form ID="Form2" Runat="server">
        <mobile:Label Runat="server">This is Form2</mobile:Label>
        <mobile:Command id="cmd2" runat="server" text="Back to Form1"
            onClick="Command_OnClick">
            <DeviceSpecific>
                <Choice Filter="isAccessKey" Text="1 is AccessKey" AccessKey="1" />
            </DeviceSpecific>
        </mobile:Command>
    </mobile:Form>
</body>
</html>
<%@ Page Language="VB" 
    Inherits="System.Web.UI.MobileControls.MobilePage" %>
<%@ Register TagPrefix="mobile" 
    Namespace="System.Web.UI.MobileControls" 
    Assembly="System.Web.Mobile" %>
<%@ Import Namespace="System.Web.Mobile" %>

<script runat="server">
    ' <Snippet2>
    Private Sub Command_OnClick(ByVal sender As Object, ByVal e As EventArgs)
        ' Display the other form
        If ActiveForm.ID = "Form1" Then
            ActiveForm = Form2
        Else
            ActiveForm = Form1
        End If
    End Sub
    ' </Snippet2>

    Public Function isAccessKey(ByVal caps As MobileCapabilities, _
        ByVal optValue As String) As Boolean
        
        ' Determine if the browser is not a Web crawler 
        ' and can use access keys
        If Not caps.Crawler AndAlso caps.SupportsAccesskeyAttribute Then
            Return True
        End If
        Return False
    End Function

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<body>
    <mobile:Form runat="server" id="Form1" >
        <mobile:Label ID="Label1" Runat="server">This is Form1</mobile:Label>
        <mobile:Command id="cmd1" runat="server" Text="No AccessKey" 
            onClick="Command_OnClick">
            <DeviceSpecific>
               <Choice Filter="isAccessKey" Text="AccessKey is 1"/>
            </DeviceSpecific>
        </mobile:Command>
        <mobile:Label id="Label2" runat="server" />
    </mobile:Form>
    <mobile:Form ID="Form2" Runat="server">
        <mobile:Label ID="Label3" Runat="server">This is Form2</mobile:Label>
        <mobile:Command id="cmd2" runat="server" text="Back to Form1"
            onClick="Command_OnClick">
            <DeviceSpecific>
                <Choice Filter="isAccessKey" Text="1 is AccessKey" AccessKey="1" />
            </DeviceSpecific>
        </mobile:Command>
    </mobile:Form>
</body>
</html>

Uwagi

Oprócz interfejsu IAttributeAccessor platforma strony ASP.NET udostępnia CustomAttributes słownik, który umożliwia określanie dodatkowych atrybutów, włączanie lub wyłączanie tworzenia przypisań niestandardowych albo dostosowywanie zachowania lub renderowania kontrolki. Aby włączyć lub wyłączyć przypisywanie niestandardowe, możesz ustawić AllowCustomAttributes właściwość na truewartość lub ustawić allowCustomAttributes atrybut <mobileControls> sekcji Web.config na truewartość .

Uwaga

Po włączeniu atrybutów niestandardowych błędy typograficzne w nazwach właściwości mogą być interpretowane jako atrybuty niestandardowe. Jeśli na przykład deweloper niepoprawnie określa Text właściwość kontrolki jako "Txet", analizator zapisze go jako atrybut niestandardowy o nazwie "Txet" zamiast zgłaszać wyjątek. Z tego powodu atrybuty niestandardowe są domyślnie wyłączone.

Dotyczy

Zobacz też