AdRotator.ImageKey Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает имя элемента, из которого получается URL-адрес изображения, используемого в рекламном объявлении. Значением по умолчанию является "ImageUrl". Этот API устарел. Сведения о разработке ASP.NET мобильных приложений см. в статье Мобильные приложения & сайты с ASP.NET. Этот API устарел. Сведения о разработке ASP.NET мобильных приложений см. в статье Мобильные приложения & сайты с ASP.NET.
public:
property System::String ^ ImageKey { System::String ^ get(); void set(System::String ^ value); };
[System.ComponentModel.Bindable(true)]
public string ImageKey { get; set; }
[<System.ComponentModel.Bindable(true)>]
member this.ImageKey : string with get, set
Public Property ImageKey As String
Значение свойства
Имя элемента, из которого получается URL-адрес изображения, используемого в рекламном объявлении.
- Атрибуты
Примеры
В следующем примере кода показано, как использовать ImageKey свойство для выбора определенного элемента из записи в XML-файле. Этот файл .aspx указывает, что значение URL-адреса изображения можно получить из <MobileImageSrc>
элемента XML-файла, и использует <элемент Choice> для выбора другого URL-адреса изображения, если браузер пользователя требует разметку WML.
Файл .aspx
:
<%@ Page Language="C#"
Inherits="System.Web.UI.MobileControls.MobilePage" %>
<%@ Register TagPrefix="mobile"
Namespace="System.Web.UI.MobileControls" %>
<%@ Import Namespace="System.Web.Mobile" %>
<script runat="server">
//<Snippet3>
private void AdCreated_Event(Object sender, AdCreatedEventArgs e)
{
Label2.Text = "Clicking the AdRotator control takes you to " +
e.NavigateUrl;
}
//</Snippet3>
// Determine whether the current browser is a WML brower
public bool isWML11(MobileCapabilities caps, string optValue)
{
// Determine if the browser is not a Web crawler and
// requires WML markup
if (!caps.Crawler && caps.PreferredRenderingType ==
MobileCapabilities.PreferredRenderingTypeWml11)
return true;
else
return false;
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<body>
<mobile:form id="form1" runat="server">
<!-- The AdRotator control -->
<mobile:AdRotator id="AdControl" runat="server"
ImageKey="MobileImgSrc" NavigateUrlKey="TargetUrl"
AdvertisementFile="App_Data/ads.xml" Alignment="Left"
KeywordFilter="Developer" OnAdCreated="AdCreated_Event">
<DeviceSpecific>
<Choice Filter="isWML11" NavigateUrlKey="WmlTargetUrl"
ImageKey= "WmlImageSrc" />
</DeviceSpecific>
</mobile:AdRotator>
<!-- The instructions label -->
<mobile:Label id="Label1" runat="server"
Text="Refresh the page to change the advertisement" />
<!-- The URL info label -->
<mobile:Label id="Label2" runat="server" />
</mobile:form>
</body>
</html>
<%@ Page Language="VB"
Inherits="System.Web.UI.MobileControls.MobilePage" %>
<%@ Register TagPrefix="mobile"
Namespace="System.Web.UI.MobileControls" %>
<%@ Import Namespace="System.Web.Mobile" %>
<script runat="server">
'<Snippet3>
Private Sub AdCreated_Event(ByVal sender As Object, _
ByVal e As AdCreatedEventArgs)
Label2.Text = "Clicking the AdRotator control takes you to " + _
e.NavigateUrl
End Sub
'</Snippet3>
' Determine whether the current browser is a WML brower.
Public Function isWml11(ByVal caps As MobileCapabilities, _
ByVal value As String) As Boolean
If Not caps.Crawler AndAlso caps.PreferredRenderingMime = _
MobileCapabilities.PreferredRenderingTypeWml11 Then
Return True
Else
Return False
End If
End Function
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<body>
<mobile:form id="form1" runat="server">
<!-- The AdRotator control -->
<mobile:AdRotator id="AdControl" runat="server"
ImageKey="MobileImgSrc" NavigateUrlKey="TargetUrl"
AdvertisementFile="App_Data/ads.xml" Alignment="Left"
KeywordFilter="Developer" OnAdCreated="AdCreated_Event">
<DeviceSpecific>
<Choice Filter="isWML11" NavigateUrlKey="WmlTargetUrl"
ImageKey= "WmlImageSrc" />
</DeviceSpecific>
</mobile:AdRotator>
<!-- The instructions label -->
<mobile:Label id="Label1" runat="server"
Text="Refresh the page to change the advertisement" />
<!-- The URL info label -->
<mobile:Label id="Label2" runat="server" />
</mobile:form>
</body>
</html>
Пример ads.xml
файла (который должен находиться в папке App_Data ):
<?xml version="1.0" encoding="utf-8" ?>
<Advertisements>
<Ad>
<WebImgSrc>imgA1.gif</WebImgSrc>
<MobileImgSrc>imgA2.gif</MobileImgSrc>
<WmlImgSrc>imgA3.gif</WmlImgSrc>
<TargetUrl>http://msdn.microsoft.com/</TargetUrl>
<WmlTargetUrl>http://OurServer/MS-MSDN.wml</WmlTargetUrl>
<AlternateText>MSDN</AlternateText>
<Keyword>Developer</Keyword>
<Impressions>80</Impressions>
</Ad>
<Ad>
<WebImgSrc>imgB1.gif</WebImgSrc>
<MobileImgSrc>imgB2.gif</MobileImgSrc>
<WmlImgSrc>imgB3.gif</WmlImgSrc>
<TargetUrl>http://www.microsoft.com/</TargetUrl>
<WmlTargetUrl>http://OurServer/MS-Home.wml</WmlTargetUrl>
<AlternateText>Microsoft</AlternateText>
<Keyword>Customer</Keyword>
<Impressions>90</Impressions>
</Ad>
<Ad>
<WebImgSrc>imgC1.gif</WebImgSrc>
<MobileImgSrc>imgC2.gif</MobileImgSrc>
<WmlImgSrc>imgC3.gif</WmlImgSrc>
<TargetUrl>http://www.microsoft.com/net/</TargetUrl>
<WmlTargetUrl>http://OurServer/MS-Net.wml</WmlTargetUrl>
<AlternateText>.NET</AlternateText>
<Keyword>Developer</Keyword>
<Impressions>80</Impressions>
</Ad>
</Advertisements>
Комментарии
Элементы в исходном XML-файле можно создавать для различных целей. Например, вы можете использовать один и тот же XML-файл как для мобильных страниц, так и для веб-страниц, но для каждого из них требуется другой файл изображения. Используйте свойство , ImageKey чтобы указать, какой элемент в XML-файле вы хотите использовать для URL-адреса изображения.
Вы также можете использовать отдельные <элементы Choice> , чтобы переопределить этот параметр, чтобы отобразить альтернативные изображения для объявления.