none
Dúvidas sobre Shapes e a melhor forma de usá-las... RRS feed

  • Pergunta

  • Olá pessoal, como estão?

     

    Desculpe vir aqui novamente, mas estou com um problema. Andei procurando em 3 livros e mais na net e não consegui achar uma solução para o problema, por isso vim aqui e gostaria que alguém pudesse dar alguma ajuda.

     

    Bom é o seguinte:

     

    Gostaria de criar várias figuras geométricas, cada uma tem que estar em arquivos separados. Esssas figuras algumas são simples como elipse outras são mais complexas como path.

     

    Essas shapes terão triggers, styles diferentes e alguns membros, propriedades diferentes. Porém todas essas figuras terão algumas coisas em comum e com isso precisaria criar uma classe base para todas serem derivadas da mesma.

     

    Eu gostaria de desenhar essas figuras e implementar triggers, styles usando o blend, pois além de ser mais rápido é mais facil também de implementar. Sua forma estou usando o Expression Design e inserindo no Blend.

     

    Algumas soluções tentei adotar, mas não foram boas. Pensei em utilizar User Control e com isso cada shape estaria em arquivos separados e com isso poderia implementar usando o Blend triggers, styles, animações mais facies. O problema seria de como criar uma classe base. E como essas shapes poderiam derivar dela.

     

    Futuramente, essas shapes serão inseridas em um canvas, e õ usuário poderá movimentá-las dentro do canvas. O Canvas por sua vez, esta dentro de um scrollView e cada conjunto desses estariam em uma aba em um tabControl.

     

     

    Bom, O gostaria de saber se há algum modo de fazer herença com user control, ou alguma outra forma que possa utilizar as facilidades de Blend e Design, pois implementar essas iguras em código não será facil.

     

     

    Bom é isso pessoal, se alguém poder me ajudar com alguma informação, texto, site e tutoriais. Muito obrigado

    terça-feira, 19 de fevereiro de 2008 11:26

Respostas

Todas as Respostas

  • Do jeito que você está falando, acrdito que a melhor maneira é criar uma interface com a funcionalidade básica que você quer para a classe. Aí você cria classes derivadas de Shape (uma para cada figura que você quer criar), que implementem esta interface.
    Outra maneira é criar uma classe derivada de Shape que implemente a funcionalidade básica e derivar todas as outras desta básica.
    Uma terceira maneira é criar uma classe derivada de Control, que contenha uma Shape e desenhe a Shape em um método de desenho
    Uma quarta maneira é criar um UserControl que tenha o estilo que você quer. Veja em http://www.codeguru.com/cpp/i-n/internet/xml/article.php/c12521/

    Dê uma olhada em http://adoguy.com/presentations/WPFCtrlCustomization_ATL200703.pdf

    Veja também este artigo sobre a criação de controles: http://msdn2.microsoft.com/en-us/library/ms745025.aspx

    Em todo caso, o Bag Of Tricks (veja meu outro post) tem um monte de componentes, você pode se basear neles.

    Bruno
    quarta-feira, 27 de fevereiro de 2008 10:11
  • Bruno obrigado pela dica.

     

    Resolviu fazer a terceira maneira que você me passou. Criei um classe que deriva de Control e fiz um método que cria um desenho. Deu certo!

     

    Obrigado pela ajuda.

     

    Abraços

     

    quinta-feira, 28 de fevereiro de 2008 11:48