Compartilhar via


Suporte de modelo do dispositivo

Suporte ao modelo de dispositivo é fornecido sistema autônomo parte da construção DeviceSpecific/Choice.Escrever controles móveis do ASP.NET que fornecem modelos de dispositivo é muito semelhante a escrever controles de servidor ASP.NET modelados.No entanto, tenha em mente as seguintes diferenças que são exclusivas de controles móveis:

  • Todos os controles móveis oferece suporte a modelos de dispositivo implementa o ITemplateable interface. Esta é uma interface de marcador e não possui métodos.

  • Controles que oferecem suporte a modelos de dispositivo devem ter um modo de renderização padrão para que o controle ainda pode processar em dispositivos quando nenhum modelo de dispositivo é definido ou especificado.

  • Os desenvolvedores do controle precisam decidir como tratar os modelos de dispositivo durante o renderização.Um comportamento é comutador para um modo exclusivamente com modelo se qualquer modelo de dispositivo estiver definido e escolhido.O controle executa todas seu renderização usando modelos fornecidos.The List controle é um exemplo de como um controle. Como alternativa, um controle pode usar modelos em um processo puramente aditiva: Se um determinado modelo é definido e escolhido, ele pode ser usado para adicionar ou substituir parte de renderização padrão.The Form controle é um exemplo de um controle que exibe este comportamento.

  • Em vez de expor ITemplate Propriedades, um controle móvel tem acesso a uma coleção de modelos definidos. The MobileControl classe base possui dois membros que podem ajudar um controle usar modelos de dispositivo:

    • The IsTemplated propriedade indica se o controle tem quaisquer modelos definido e escolhido, sistema autônomo mostrado no exemplo de código a seguir.

      if (mobileControl.IsTemplated)
      {
          return true;
      }
      
    • The GetTemplate método retorna o modelo de dispositivo do nome fornecido, ou null Se nenhum for definido. O exemplo a seguir mostra como modelos de dispositivo são recuperados e testados para null status.

      public override void CreateDefaultTemplatedUI(bool doDataBind) 
          {
              ITemplate headerTemplate = GetTemplate(Constants.HeaderTemplateTag);
              ITemplate footerTemplate = GetTemplate(Constants.FooterTemplateTag);
              ITemplate scriptTemplate = GetTemplate(Constants.ScriptTemplateTag);
              if (headerTemplate != null)
              {
                  _headerContainer = new TemplateContainer();
                  headerTemplate.InstantiateIn(_headerContainer);
                  _headerContainer.EnablePagination = false;
                  Controls.AddAt(0, _headerContainer);
              }
              if (footerTemplate != null)
              {
                  _footerContainer = new TemplateContainer();
                  footerTemplate.InstantiateIn(_footerContainer);
                  _footerContainer.EnablePagination = false;
                  Controls.Add(_footerContainer);
              }
              if (scriptTemplate != null)
              {
                  _scriptContainer = new TemplateContainer();
                  scriptTemplate.InstantiateIn(_scriptContainer);
                  _scriptContainer.EnablePagination = false;
              }
          }
      

A tabela a seguir descreve os modelos que estão disponível por meio de Form controle. The Form o controle suporta ambos os conjuntos de modelo específicos de dispositivos e independente de dispositivo.

Modelo

Descrição

Modelo de cabeçalho

O modelo de cabeçalho é renderizado na parte superior do formulário.Se o formulário seja paginado em diversas telas, cada tela contém o cabeçalho.O modelo de cabeçalho pode ser parte de um conjunto de modelos independente de dispositivo.Se o conjunto de modelos é independente de dispositivo, o modelo de cabeçalho contém os controles móveis.

Modelo de rodapé

O modelo de rodapé é renderizado na parte inferior do formulário.Se o formulário seja paginado em diversas telas, cada tela contém o rodapé.O modelo de rodapé pode ser parte de um conjunto de modelos independente de dispositivo.Se o conjunto de modelos é independente de dispositivo, o modelo de rodapé contém controles móveis.

Modelo de script

O modelo de script é processado na parte superior do formulário.Se o formulário seja paginado em diversas telas, cada tela contém o modelo de script.O código dentro do modelo de script é adicionado diretamente após a abertura <head> marca HTML dispositivos e diretamente após a abertura <card> marca em dispositivos WML.

Esses modelos também estão disponível por meio de programação.Para obter mais informações, consulte o Footer propriedade, Header propriedade, e Script propriedade.

Consulte também

Conceitos

Conjuntos de modelo e modelos de controles

Implementando modelos renderização

Outros recursos

Adicionando adaptadores de dispositivo novo e suporte de dispositivo