• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Weasel

WPF Já usam?

14 mensagens neste tópico

Boas pessoal,

WPF - Windows Presentation Foundation (.NET 3.5)

Vocês já usam estas novas aplicações?

Eu devo confessar que aquilo me faz um bocado de confusão, estou tão habituado aos Windows Forms, quem já se "converteu" achou complicado, quais foram as maiores dificuldades e já agora porque mudaram?

Eu ainda não fiz nada em WPF, mas também ainda não tive necessidade de nenhuma aplicação que use os recursos que o WPF oferece.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não uso e não espero usar tão cedo.

É muito potente, permite designs muito bons mas é complicado de iniciar e muito complexo para muitas coisas. Mas permite (quase) tudo .. colocar videos dentro de um botão, checkboxes dentro de uma combobox, etc, e em muitos casos com poucos comandos.

Até ver só fiz alguns testes usando controlos WPF em windowsforms e gosto do resultado. Podes usar a aplicação windows normalmente e apenas utilizas algumas coisas WPF.

No entanto já ouvi dizer que as próximas versões do Visual Studio são cada vez mais viradas para esta tecnologia ... é aguadar.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Eu não acho que seja assim tão complexo quanto isso, mas vou ser honesto, também ainda não explorei muito. Mas o que me pareceu à primeira vista é que poderá ser diferente no inicio para quem esta habituado a Windows Forms, isso sim. Mas assim que nos habituemos a XAML, eu acho que aquilo é capaz de facilitar muita coisa mesmo até porque de uma forma geral é mesmo isso que muda, o código C# ou VB.NET continua o mesmo. Só muda a forma como desenhamos as janelas e todas essas coisas. Mas se calhar isto só sou eu que usei o Microsoft Blend 2 (licenças universitárias rulam) e não o editor WPF que vem com VS2008 (Cider) o que me deixou com uma opinião bastante positiva de tudo o que o WPF permite.

Agora a parte em que critico... O que não gostei no WPF é algo que muita gente não gosta, existem dezenas de blogs por ai a falar da mesma coisa e nada se vê a Microsoft a fazer para solucionar o problema. Refiro-me ao ClearType introduzido no WPF que não é o mesmo que é usado no XP/Vista. No meu portátil e no de muita gente (mas acho que já li relatos de pessoal a quem isto não acontece, mas são uma minoria, acho eu) o ClearType do WPF é muito mau e mesmo que tenham o ClearType do Windows desactivado, o do WPF fica ligado. Existem uns hacks po registo para tentar desligar/melhorar, mas não funcionam como deve ser para toda a gente. No geral, a renderização de texto em WPF deixa muito a desejar e em comparação com Windows Forms (ou seja, ClearType do Windows) é péssimo pois esta última é muito melhor.

Ficam aqui dois artigos sobre o assunto:

http://www.paulstovell.com/blog/wpf-why-is-my-text-so-blurry

http://arbel.net/blog/archive/2007/02/02/give-me-back-my-cleartype.aspx

No meu portátil, ou seja, ecrã LCD a correr a resolução nativa (1280x800), o 2º exemplo no 1º link tem um texto muito mais limpo e menos cansativo de ler. O que é que vocês acham? Isto é sem dúvida uma das razões pela qual ainda não usei WPF. Já em tempos desenhei a skin actual do FireNotes toda em XAML e ficou mesmo espectacular, até tinha anti-aliasing nos cantos, mesmo bonito. Juntei-lhe um WindowsFormsHost para continuar a usar o interface que já tinha programado, corro a aplicação e fica horrivel por causa do texto. Desisti logo da ideia, é pena, porque facilitava muitas outras coisas.

Já agora jpaulino, o que é que achas que o WPF tem assim de tão complexo? O editor que vem no VS2008 que é realmente muito mau ou referes-te a algo diferente?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Eu ainda fiz umas brincadeiras com WPF mas parei quando chegou à parte de databinding, sem ler sobre o assunto era-me impossível fazer alguma coisa de geito, como ainda n tive tempo para ler sobre WPF... tá na queue :D

De qualquer maneira achei que WPF ainda tinha poucos controlos em relação ao Windows Forms mas partilho da opinião que os próximos VisualStudio irão apostar cada vez mais em WPF como camada de apresentação.

Pelo que sei, no mercado ainda não se fala de WPF como tecnologia utilizada.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Já agora jpaulino, o que é que achas que o WPF tem assim de tão complexo? O editor que vem no VS2008 que é realmente muito mau ou referes-te a algo diferente?

Eu até gosto do editor mas achei que em certas coisas é complexo, como o databinding é verdade, mas também criação de listas, o facto dos objectos não terem uma posição absoluta (como em Web) , etc.

Provavelmente até é pela minha inexperiência nesta área, mas não senti o mesmo quando comecei no ASP.NET. É como aprender uma nova linguagem e sinceramente de momento não vou perder tempo.

Agora que para criação de user controls é muito bom, disso não tenho dúvidas.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Se percebi o que queres dizer com os objectos não terem uma posição absoluta acho que sei qual foi o teu problema (ou talvez não). Não sei se reparaste ou não, mas o WPF tem vários controlos como o Canvas ou Grid, entre outros que agora não me lembro, que te permite posicionar outros objectos de formas diferentes. Cada um desses controlos (canvas, grid, etc...) tem a sua forma especifica de permitir o posicionamento dos objectos. Se é que era a isto que te referias...

Mas lá está, isto deve-se ao habito que temos em WinForms, chegamos a WPF e as coisas mudaram um bocadinho. Digamos que será como uma passagem de VB6 para VB.NET, pelo menos no meu caso que passei por isso, sinto uma pequena semelhança.

O que querem dizer por "databinding"? É tipo ter uma base de dados, sacar os registo de lá e apresenta-los numa datagrid? É que se for isso, por acaso já li muita gente a queixar-se disso em WPF mas acho que já li qualquer coisa que a Microsoft estava a preparar uns controlos para resolver essa lacuna. Mas não confirmo nem desminto.

Eu acho que WPF tem pernas para andar, só acho que entrou com pé esquerdo neste VS2008. Mas acreditem, não sei se já experimentaram ou não, mas o Expression Blend facilita muita coisa em relação ao que o VS2008 permite. Aconselho-vos a brincarem um bocadinho com ele quando tiverem tempo, se tiverem interesse claro.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Se percebi o que queres dizer com os objectos não terem uma posição absoluta acho que sei qual foi o teu problema (ou talvez não). Não sei se reparaste ou não, mas o WPF tem vários controlos como o Canvas ou Grid, entre outros que agora não me lembro, que te permite posicionar outros objectos de formas diferentes. Cada um desses controlos (canvas, grid, etc...) tem a sua forma especifica de permitir o posicionamento dos objectos. Se é que era a isto que te referias...

Sim, é um como a web, em que tens de usar div's e tabelas para colocar as coisas no sitio, recorrendo a CSS.

O que querem dizer por "databinding"? É tipo ter uma base de dados, sacar os registo de lá e apresenta-los numa datagrid? É que se for isso, por acaso já li muita gente a queixar-se disso em WPF mas acho que já li qualquer coisa que a Microsoft estava a preparar uns controlos para resolver essa lacuna. Mas não confirmo nem desminto.

Sim, é isso. Não me parece nada simples e os exemplos que já vi não ajudam muito. Mas como não vou utilizar para já também não vou perder muito tempo.

Já a possibilidade de criar custom controls e utiliza-los em winforms agrada-me.  :biggrin:

É dar tempo ao tempo.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Sim, isso também é interessante mas para mim ainda não teve particular utilidade.

Quanto a cena dos databindings, eu como nunca tive de usar base de dados em aplicações .NET nunca me preocupei com isso, mas sei que muita gente usa por isso é importante que tenha melhor suporte.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Por exemplo eu em quase todas as aplicações que fiz 90% uso DatagridView para apresentar dados. (Gestão de bases de dados) Para mim é um controlo fundamental :)

Mas Windows Forms ainda estão aí para durar e a MS garante dar suporte ás Windows Forms por muitos anos.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Por exemplo eu em quase todas as aplicações que fiz 90% uso DatagridView para apresentar dados. (Gestão de bases de dados) Para mim é um controlo fundamental :)

Mas Windows Forms ainda estão aí para durar e a MS garante dar suporte ás Windows Forms por muitos anos.

Pois, lá está, um controlo que uso bastante e um dos meu favoritos. No entanto se usar apenas WPF tinha de adicionar referências a um controlo de winforms para o poder utilizar.

Não faz muito sentido!

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Mas qual era o problema? Se Microsoft permitiu usar controlos WinForms em WPF (e vice-versa), onde está o mal em o fazer?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Mas qual era o problema? Se Microsoft permitiu usar controlos WinForms em WPF (e vice-versa), onde está o mal em o fazer?

Não há mal nenhum só que se vais usar WPF porque é uma tecnologia nova e inovadora e depois tens de recorrer a controlos winforms porque ainda não estão disponíveis, não tem, a meu ver, muita lógica.

É um pouco trabalhares com vb.net e usares um msflexgrid (um exemplo um pouco exagerado :))

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Percebo o teu ponto de vista, mas eu vejo mais as tecnologias como um complemento à outra. Isto, enquanto o WPF não é mais desenvolvido...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

boas,

já algum tempo que desenvolvo aplicações cliente, usando WPF. E estou neste momento acabar a minha

Microsoft Certified Technology Specialist: .NET Framework 3.5 Windows Presentation Foundation Applications

Tenho também experiência em Windows Forms.

O que tenho a dizer é que WPF, é fantástico!

WPF permite separar a parte de design da parte lógica, isto é, o código Xaml pode ser gerado pelo Expression Blend e ser um design a criar todo o "user interface", e o código C#, onde é programada toda a parte lógica feita pelo programado.

Podemos criar um aspecto da nossa aplicação de uma forma moderna, radical, inovadora....há-ja imaginação.

Temos um conjunto de controlos base e partir deles podemos criar muito mais e apresentá-los da forma que quisermos.

Colocar uma checkBox dentro de um item de uma combobox é algo normal, podemos definir DataTemplate e ControlTemplates de acordo como nós queremos apresentar. Por exemplo um item de uma listbox, pode ser definido por um conjunto de labels ou textblock que contém as várias caracteristicas de um determinado objecto.

Esta facilidade dão-nos uma liberdade que em Windows Form não tinhamos...e para alterarmos um controlo tinhamos que por vezes descer a baixo nível. Eu tive que criar e alterar controlos em Windows Forms tive algumas dificuldades, e em WPF sinto a vida facilitada.

Um exemplo em Windows Forms onde tive muitos problemas, foi na criação dos controlos:

Line,

Circle,

Rectangle,

Polyline,

Path,....

grande dor de cabeça....e WPF já tem!

Atenção que são controlos e não desenhos....e mais a solução de usar uma pictureBox com uma image com o desenho da figura geométrica não é solução.

Podemos aplicar grandientes aos controlos, e não apenas uma determinada cor....

Podemos criar animações...

Usar Bindings, ValidationRule, e Converters torna a nossa aplicação mais arrumadinha e com muito menos código.

DataBinding ou Bindings é o processo de relaccionar o nosso objecto com o controlo que o vai apresentar! E está errado o que foi dito sobre o databinding.

Imaginemos que tenho um objecto do tipo

Humano com as característica Nome.

e suponhamos que temos um textbox onde vamos apresentar o nome.

Então usando um binding

o nosso source é o humano

o nosso target é a textbox

* o modo como o valor do nome do humano é actualizado na textbox é definido pelo UpdateSourceTrigger.

* o modo como o valor do nome do humano é validado, depois de alterado na textbox é validado pelos vários ValidationRules que se pode definir no binding.

* o modo como o valor do nome do humano é apresentado na textbox é definido pelo converter.

Numa lista de objectos ainda podemos aplicar Filter, Group and Sort à colecção que estamos apresentar! Costumo usar e é mesmo muito bom.

Página oficial sobre WPF

WPF themes

WPFToolkit

Agora, tem algumas coisas que gostaria de ver desenvolido em WPF e não existe:

ColorDialog

BrowseDialog

e ainda há ou box dialog.....

claro que podemos usar as boxes dialog de Windows Forms...mas se aplicarmos um estilo diferente às nossas windows, o aspecto não será o mesmo.

Outro aspecto que ainda tenho algumas dificuldades, por falta de aprofundar os meus conhecimentos, é na aplicação de styles! Ao aplicarmos um estilo estamos a alterar algumas definição de base e por vezes isso queria problemas e algumas coisas deixam de funcionar. Penso ser um problema possível de resolver.

Bom trabalho

tofas

Este tópico não devia estar na seccção de VB.Net  :nono1:

Estamos a falar de WPF, que pode usar VB ou C#....mas devia estar em Dúvidas Gerais...já que não há secção de WPF  :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora