none
Como disparar o evento SelectionChange de um ComboBox dentro de um evento Click de um Button em WPF? RRS feed

  • Pergunta

  • Alguém pode me ajudar como disparar o evento SelectionChange de um ComboBox dentro de um evento Click de um Button .  Eu tentei usar Dispacher.invoke mas não funcionou...

    Segue abaixo os dois eventos.

     

     private void buttonIncluir_Click(object sender, RoutedEventArgs e)

            {        

                Dispatcher.Invoke(new SelectionChangedEventHandler(familiaComboBox_SelectionChanged);

     

            }

     

    private void familiaComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)

            {

                ComboBox combo = sender as ComboBox;

     

     

                ObjectDataProvider membroProvider = this.FindResource("membroProvider") as ObjectDataProvider;

                membroProvider.MethodParameters[0] = combo.SelectedValue;

     

            }

     

     

    OBRIGADO PESSOAL..

     

    sexta-feira, 14 de janeiro de 2011 15:48

Respostas

  • Amigo,

    Tenta assim.

    using System.Windows;
    using System.Windows.Controls;
    
    namespace ExemploEvento
    {
      /// <summary>
      /// Interaction logic for MainWindow.xaml
      /// </summary>
      public partial class MainWindow : Window
      {
        public MainWindow()
        {
          InitializeComponent();
        }
    
        private void button1_Click(object sender, RoutedEventArgs e)
        {
          comboBox1_SelectionChanged(comboBox1, null);
        }
    
        private void comboBox1_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
          ComboBox combo = sender as ComboBox;
          MessageBox.Show(string.Format("Objeto: {0} - Evento: comboBox1_SelectionChanged", combo.Name));
        }
      }
    }
    
    


    se a resposta foi útil, classifique :)
    ate mais,

    Rodrigo Soria
    • Marcado como Resposta JoaoFaria segunda-feira, 17 de janeiro de 2011 11:48
    sábado, 15 de janeiro de 2011 20:29

Todas as Respostas

  • Amigo,

    Tenta assim.

    using System.Windows;
    using System.Windows.Controls;
    
    namespace ExemploEvento
    {
      /// <summary>
      /// Interaction logic for MainWindow.xaml
      /// </summary>
      public partial class MainWindow : Window
      {
        public MainWindow()
        {
          InitializeComponent();
        }
    
        private void button1_Click(object sender, RoutedEventArgs e)
        {
          comboBox1_SelectionChanged(comboBox1, null);
        }
    
        private void comboBox1_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
          ComboBox combo = sender as ComboBox;
          MessageBox.Show(string.Format("Objeto: {0} - Evento: comboBox1_SelectionChanged", combo.Name));
        }
      }
    }
    
    


    se a resposta foi útil, classifique :)
    ate mais,

    Rodrigo Soria
    • Marcado como Resposta JoaoFaria segunda-feira, 17 de janeiro de 2011 11:48
    sábado, 15 de janeiro de 2011 20:29
  • Amigo,

    Tenta assim.

     

    using System.Windows;
    using System.Windows.Controls;
    
    namespace ExemploEvento
    {
     /// <summary>
     /// Interaction logic for MainWindow.xaml
     /// </summary>
     public partial class MainWindow : Window
     {
      public MainWindow()
      {
       InitializeComponent();
      }
    
      private void button1_Click(object sender, RoutedEventArgs e)
      {
       comboBox1_SelectionChanged(comboBox1, null);
      }
    
      private void comboBox1_SelectionChanged(object sender, SelectionChangedEventArgs e)
      {
       ComboBox combo = sender as ComboBox;
       MessageBox.Show(string.Format("Objeto: {0} - Evento: comboBox1_SelectionChanged", combo.Name));
      }
     }
    }
    
    

     


    se a resposta foi útil, classifique :)
    ate mais,

    Rodrigo Soria

    Muito obrigado Rodrigo, nada como pensar simples.

    Eu tenho uma outra questão, se o comboBox1 estiver em um DataGrid, eu tenho que localizar ele primeiro antes de chamar comboBox1_SelectionChanged(comboBox1, null) correto? como eu faço isso de maneira simples?

    obrigado!

    João Faria

    segunda-feira, 17 de janeiro de 2011 12:02