none
Seleccionar checkbox en TreeviewItems en diferentes tabitems de tabcontrol wpf RRS feed

  • Pregunta

  • Hola buen día,

    Estoy teniendo un problema con un control tabcontrol en el momento de cambio de pestaña:

    Tengo 2 pestañas, en la primera pestaña que llamo un método que selecciona checkboxs que están dentro de un treeview. La llamada de este método se ejecuta en una tecla enter, pero cuando se utiliza un foreach para los treeviewitems éstos lleguan null, he depurado el código y sólo es nula cuando está en una pestaña diferente.

    El siguiente es el código de txtNicke tab1

    private void txtNick_KeyDown(object sender, KeyEventArgs e)

        {

            if ((e.Key == Key.Enter))

            {

                CargarTreeviewenvironment(list);

            }

        }

    Este metodo hace referencia al treeview que esta en el tab2

     public void CargarTreeviewenvironment(List<int> lstenvironment)

        {

            foreach (object obje in  this.trvenvironment.Items)

            {

                var area = (TreeViewItem)trvenvironment.ItemContainerGenerator.ContainerFromItem(obje);

                foreach (var item in area.Items)

                {

                    TreeViewItem group = (TreeViewItem)area.ItemContainerGenerator.ContainerFromItem(item);

                    var ngroup = group.Tag;

                    if (lstAmbientes.Contains(int.Parse(ngroup.ToString())))

                    {

                        var node = group.Header as CheckBox;

                        node.Background = Brushes.Red;

                        node.IsChecked = true;

                    }

                }

            }

        }

    Cuando invoco el método por primera vez el objet no es nulo, pero el nodo secundario es nulo



    Y esto no sucede cuando llamo al método desde un botón x pero en el tab2 donde esta el treeview, el objeto y el nodo secundario no son nulos


    Espero que puedan ayudarme a encontrar un evento después de cargar el tab2 o algo que funcione,

    gracias

    miércoles, 30 de noviembre de 2016 22:27