Как проверить, что выбранный элемент является родительским элементом в Treeview - PullRequest
0 голосов
/ 20 апреля 2010

Чтобы получить дочерние элементы в виде строки, я использовал следующий код

private void treeview1_SelectedItemChanged(object sender, RoutedPropertyChangedEventArgs<object> e)
        {
            if (treeview1.SelectedItem != null)
            {
                Animal bar = (Animal)treeview1.SelectedItem;
                string str = bar.Name;
                int boxty = bar.BoxType;
                int boxno = bar.BoxNo;
            }

        }

Он работает нормально. Но когда я нажимаю на родителя (вместо знака +), он переходит к этому коду и показывает ошибку.Конечно, я выбрал SelectedItem для моего List-Animal.Но я не хочу этого. Я должен проверить, является ли элемент clciked родительским, если это так, тогда я пропущу эту кодировку. Только когда я щелкаю дочерние элементы, она переходит к этой кодировке.Как я могу это сделать? Как я могу определить, что выбранный элемент является родительским.

1 Ответ

0 голосов
/ 20 апреля 2010

Я использовал следующий код строки

treeview1.Items.IndexOf(treeview1.SelectedItem)

Возвращает -1, когда мы выбираем элементы сборки, и возвращает 1,2.etc, зависит от того, на каком родительском элементе щелкают.

Так что я использовал это, чтобы проверить, является ли элемент clciked дочерним.

 if (treeview1.Items.IndexOf(treeview1.SelectedItem) == -1)
                {
                    Animal bar = (Animal)treeview1.SelectedItem;
                    string str = bar.Name;
                    int boxty = bar.BoxType;
                    int boxno = bar.BoxNo;
                }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...