none
Datagrid Wpf C# RRS feed

  • Discussão Geral

  • Galera, td bem ?

    Preciso da ajuda de vcs num programa que estou desenvolvendo. 

    Basicamente, tenho um datagrid em wpf c#, no qual ele é alimentado por um arquivo xml. Ate aqui td bem !

    No entanto, existe um campo em meu datagrid que se chama localização, nesse campo eu tenho endereços de ruas que foram visitadas. Logo a frente existe também os horários.

    - Eu quero que um label, logo abaixo desse datagrid, me mostre os 5 endereços mais visitados ( extraidos desse datagrid ).

    **- E um outro label, me mostre uma faixa de horário, que é mais utilizada. Ex.: Entre 10 hs e 22:50 hs ( extraidos desse datagrid ). 

    Espero que possam me ajudar 

    Att.

    Tiago

    • Tipo Alterado Marcos SJ segunda-feira, 22 de fevereiro de 2016 21:29 O fórum não presta suporte a "How to"
    segunda-feira, 22 de fevereiro de 2016 21:07

Todas as Respostas

  • Pode postar o código ?
    terça-feira, 23 de fevereiro de 2016 17:26
  • public partial class MainWindow : Window
        {
            public MainWindow()
            {
                InitializeComponent();
            }

            private void ShowGrid()
            {
                XDocument doc = XDocument.Load(@"Acesso.xml");

                var acesso = from p in doc.Root.Elements("Acesso")
                             select new
                             {
                                 Localização = p.Element("Localização").Value,
                                 UltimoAcesso = p.Element("UltimoAcesso").Value,
                                 Autenticação = p.Element("Autenticação").Value
                             };

                datacontrol.ItemsSource = acesso.ToList();


            }

            private void Window_Loaded_1(object sender, RoutedEventArgs e)
            {
                ShowGrid();
                LbAtuali.Content = string.Format("Atualizado em: [{0}]", DateTime.Now.ToString());
            }

            private void Button_Click_1(object sender, RoutedEventArgs e)
            {
                ShowGrid();
                LbAtuali.Content = string.Format("Atualizado em: [{0}]", DateTime.Now.ToString());

            }

            private void btn2_Click(object sender, RoutedEventArgs e)
            {   
                for (int i = 0; i < datacontrol.Items.Count; i++)
                {
                    DataGridRow row = (DataGridRow)datacontrol.ItemContainerGenerator.ContainerFromIndex(i);
                    TextBlock cellContent = datacontrol.Columns[0].GetCellContent(row) as TextBlock;
                    if (cellContent.Text.Equals(tb2.Text))
                    {
                        object item = datacontrol.Items[i];
                        datacontrol.SelectedItem = item;
                        datacontrol.ScrollIntoView(item);
                        row.MoveFocus(new TraversalRequest(FocusNavigationDirection.Next));
                        break;
                    }
                }            
            }

        }
    }

    // nesse btn2 consegui implementar um "SEARCH", entretanto não é isso que quero !

    Espero que possa me ajudar !

               
    quarta-feira, 24 de fevereiro de 2016 03:17