locked
Como alterar o XAML RRS feed

  • Pergunta

  • Boa tarde, Pessoal!

     

    Estudando um pouco da interação do visual studio e o blend, senti a necessidade de alterar o xaml ou parte de seu conteudo.

    Exemplo crio uma aplicação no Blend com 2 Skins (estilos visuais) e coloco em meu programa dois botões, um botão que qdo clicado muda para o 1 Skin e outro botão que qdo é clicado muda para o 2 Skin.

     

    Entendo que é só fazer uma alteração no XAML, mas como alterar uma parte do XAML via evento de um click de botão???

     

    Obrigado!

    João Paulo.

    quinta-feira, 8 de novembro de 2007 16:37

Respostas

  • Se você tem os estilos definidos em um resource como:

     

    <Window.Resources>

      <Style x:Key="ButtonStyle1" TargetType="{x:Type Button}">

        <Setter Property="Background" Value="#FFF41818"/>

        <Setter Property="FontFamily" Value="Segoe Script"/>

      </Style>

      <Style x:Key="ButtonStyle2" TargetType="{x:Type Button}">

        <Setter Property="Background" Value="#FFF2E923"/>

        <Setter Property="FontFamily" Value="Lucida Handwriting"/>

      </Style>

    </Window.Resources>

     

    Basta você usar o método FindResources, como em:

     

    private void Button_Click(object sender, RoutedEventArgs e)

    {

      (sender as Button).Style = (Style)FindResource("ButtonStyle1");

    }

     

    Bruno

     

    quinta-feira, 27 de dezembro de 2007 15:05

Todas as Respostas

  • Faça um atributo no Canvas do tipo OnmouseClick="nome da funcao"

    E depois monte um javascript criando essa função

    Parece simples , mas se quiser detalhe entre em contato
    segunda-feira, 19 de novembro de 2007 02:26
  • Se você tem os estilos definidos em um resource como:

     

    <Window.Resources>

      <Style x:Key="ButtonStyle1" TargetType="{x:Type Button}">

        <Setter Property="Background" Value="#FFF41818"/>

        <Setter Property="FontFamily" Value="Segoe Script"/>

      </Style>

      <Style x:Key="ButtonStyle2" TargetType="{x:Type Button}">

        <Setter Property="Background" Value="#FFF2E923"/>

        <Setter Property="FontFamily" Value="Lucida Handwriting"/>

      </Style>

    </Window.Resources>

     

    Basta você usar o método FindResources, como em:

     

    private void Button_Click(object sender, RoutedEventArgs e)

    {

      (sender as Button).Style = (Style)FindResource("ButtonStyle1");

    }

     

    Bruno

     

    quinta-feira, 27 de dezembro de 2007 15:05