MobilePage.AllowCustomAttributes Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Получает значение, указывающее, могут ли у элементов управления на этой странице быть определены настраиваемые атрибуты. Значением по умолчанию является значение атрибута allowCustomAttributes
в разделе <mobilecontrols
> файла Web.config. Этот API устарел. Сведения о разработке ASP.NET мобильных приложений см. в статье Мобильные приложения & сайты с 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
Значение свойства
true
, если у элементов управления на этой странице могут быть определены настраиваемые атрибуты; в противном случае — false
.
- Атрибуты
Примеры
В следующем примере показано, как использовать AllowCustomAttributes свойство для включения пользовательского AccessKey
атрибута в Command.
Примечание
В следующем примере кода используется однофайловая модель кода и может работать неправильно, если скопировать ее непосредственно в файл кода программной части. Этот пример кода необходимо скопировать в пустой текстовый файл с расширением .aspx. Дополнительные сведения см . в разделе модель кода страницы веб-форм ASP.NET.
<%@ 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>
Комментарии
В дополнение к интерфейсу IAttributeAccessor платформа страниц ASP.NET предоставляет CustomAttributes
словарь, который позволяет указывать дополнительные атрибуты, включать или отключать настраиваемое атрибутирование, а также настраивать поведение или отрисовку элемента управления. Чтобы включить или отключить настраиваемое атрибутирование, можно задать AllowCustomAttributes для свойства true
значение или задать allowCustomAttributes
для атрибута <mobileControls>
раздела Web.config значение true
.
Примечание
Если настраиваемые атрибуты включены, опечатки в именах свойств можно интерпретировать как настраиваемые атрибуты. Например, если разработчик неправильно указывает Text свойство элемента управления как "Txet", средство синтаксического анализа сохранит его как настраиваемый атрибут С именем "Txet" вместо создания исключения. По этой причине настраиваемые атрибуты отключены по умолчанию.