Silverlight - Tipos de Projeto
Se você criar um novo projeto no Visual Studio, verá quatro tipos de projeto no painel direito da caixa de diálogo. Eles são -
- Aplicativo Silverlight
- Silverlight Class Library
- Biblioteca de classes (portátil)
- Aplicativo de navegação Silverlight
Os dois primeiros, Silverlight Application e Silverlight Class Library, são bastante simples. Eles são análogos aos executáveis em DLLs no mundo dos aplicativos clássicos do Windows. Ambos constroem DLLs por causa de como os aplicativos Silverlight são implementados.
Conceitualmente, um projeto de aplicativo do Silverlight cria um programa, que pode ser executado, enquanto o projeto Biblioteca de classes cria uma biblioteca projetada para ser incorporada a outros aplicativos.
Você pode construir uma biblioteca de classes se estiver planejando construir vários aplicativos e quiser reutilizar o código comum. Se você está planejando vender os controles que outras pessoas usarão em seus aplicativos, novamente uma biblioteca é o que deve ser construído.
Os outros tipos de projeto são um pouco menos óbvios, portanto, vamos examiná-los em detalhes mais adiante neste capítulo.
Aplicativos da Web Silverlight
Os aplicativos Silverlight são baixados da web, portanto, normalmente você terá um projeto da web associado ao projeto Silverlight. Existem alguns recursos do Visual Studio, projetados para gerenciar o relacionamento entre esses projetos.
Vamos dar uma olhada em um exemplo simples de projeto de aplicativo Silverlight novamente.
Step 1 - Aberto Visual Studio. Clique noFile menu, aponte para New e então clique Project.
Step 2 - A New Projecta caixa de diálogo será aberta. DebaixoTemplates, selecione Visual C# e depois click Silverlight. No painel direito, escolha Aplicativo Silverlight.
Insira um nome de projeto e um local em seu disco rígido para salvá-lo.
O próprio projeto do Silverlight irá apenas construir o conteúdo do Silverlight, e esse conteúdo é apenas um ativo entre muitos que irão compor o aplicativo da web inteiro.
Clique OK.
Step 3 - Verifique o Host the Silverlight application checkbox. O padrão é um projeto de aplicativo da Web ASP.NET.
Step 4- O MS-Visual Studio criou dois projetos, o projeto Silverlight e um aplicativo da Web ASP.NET. Agora, precisamos de um aplicativo da web ASP.NET. Você pode ver isso noSolution Explorer janela conforme mostrado abaixo.
Qualquer coisa que possa servir o conteúdo via HTTP servirá, mas isso é Visual Studio, e entende a tecnologia da Web ASP.NET, então é isso que ela nos oferece.
Para demonstrar que o Silverlight não depende de nenhuma tecnologia específica do lado do servidor, vamos excluir este .aspx arquivo, deixando apenas o arquivo HTML estático simples.
Step 5- Clique com o botão direito em FirstExampleTestpage.aspx. Na lista de opções, clique emDelete.
Step 6 - Definir FirstExampleTestPage.html Enquanto o Start página.
o MainPage.xamlarquivo define a interface do usuário para o conteúdo do Silverlight. Você pode escrever o código XAML diretamente ou também pode usarToolbox para arrastar e soltar diferentes elementos da IU.
Step 7 - Abaixo está um código simples em MainPage.xaml em que um Button e um TextBlock são definidos dentro do StackPanel.
<UserControl x:Class = "FirstExample.MainPage"
xmlns = "http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x = "http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d = "http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc = "http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable = "d"
d:DesignHeight = "300" d:DesignWidth = "400">
<Grid x:Name = "LayoutRoot" Background = "White">
<StackPanel>
<TextBlock x:Name = "TextMessage" Text = "Hello World!"
Margin = "5"> </TextBlock>
<Button x:Name = "ClickMe" Click = "ClickMe_Click" Content = "Click
Me!" Margin = "5"> </Button>
</StackPanel>
</Grid>
</UserControl>
Step 8 - Este exemplo assume que você criou um método de manipulação de eventos denominado ClickMe_Click. Aqui está o que parece noMainPage.xaml.cs Arquivo.
using System.Windows;
using System.Windows.Controls;
namespace FirstExample {
public partial class MainPage : UserControl {
public MainPage() {
InitializeComponent();
}
private void ClickMe_Click(object sender, RoutedEventArgs e) {
TextMessage.Text = "Congratulations! you have created your
first Silverlight Applicatoin";
}
}
}
Step 9 - Um aplicativo Silverlight pode ser executado em qualquer navegador instalado.
Step 10 - Quando o código acima for compilado e executado, você verá a seguinte página da web.
Aplicativo de navegação Silverlight
O modelo de aplicativo de navegação Silverlight cria um projeto semelhante a um aplicativo Silverlight comum. Não há nada fundamentalmente diferente nos dois tipos de projeto. O modelo de navegação inclui apenas alguns códigos adicionais que você pode adicionar facilmente. Como o nome sugere, ele oferece suporte à navegação semelhante à da web no aplicativo Silverlight.
Vamos criar um aplicativo de navegação.
Step 1 - Selecione Silverlight Navigation Application do painel direito no New Project caixa de diálogo.
Step 2 - Siga as configurações como fez para o aplicativo da Web Silverlight.
Step 3 - Clique no OKbotão. Uma janela será aberta conforme mostrado abaixo.
Normalmente, eles têm um projeto da web associado, portanto, teremos um deles. Ele cria dois projetos conforme descrito antes, mas como você pode ver, a interface de usuário padrão parece um pouco menos vazia.
Step 4- Ele fornece um aplicativo Chrome, incluindo uma barra de navegação. A solução contém alguns arquivos extras. esteStyles arquivo define a aparência do NavigationBarra. NissoViews pasta, vemos algumas páginas e também uma janela para mostrar os erros.
Como você pode ver, quando você executa o aplicativo, ele mostra uma página inicial com algum conteúdo de espaço reservado.
Step 5 - Quando você clica no About botão, ele irá navegar para o About página.
O importante é que você pode usar o navegador Back e Forward botões para refazer os passos.
Normalmente, quando você faz isso, o navegador da web vai de uma página da web para outra, mas aqui não. O aplicativo Silverlight realmente não descarrega; ele continua em execução e mostra apenas um conteúdo diferente.
Portanto, do ponto de vista do navegador, na verdade está tudo em uma página da web. O Silverlight faz alguns truques com os botões de navegação para garantir que a página da web não descarregue enquanto navegamos.