获取 TreeView 中子节点的 SelectedIndex

发布于 2024-11-16 00:17:43 字数 348 浏览 9 评论 0原文

我目前正在使用 C# 开发一个 wpf 项目。

我创建了一个树视图,其中包含父节点和子节点。

我想知道是否有办法获取用户单击的子节点的索引。 (与使用组合框时的“.SelectedIndex”类似)

我尝试过各种方法,例如:

int val =TreeView.SelectedItemProperty.GlobalIndex;

fileInput.IndexOf(treeView1.SelectedItem);

但它们似乎不起作用。

如有任何建议或意见,我们将不胜感激。

谢谢

I am currently working on a wpf project in C#.

I have a treeview created that has parent nodes with childen nodes inside of it.

I was wondering if there was a way to get the index of the child node the user clicked on. (Simmilar to ".SelectedIndex" when using comboboxes)

I have tried Various ways such as:

int val =TreeView.SelectedItemProperty.GlobalIndex;

and

fileInput.IndexOf(treeView1.SelectedItem);

But they dont seem to work.

Any suggestions or comments are greatly appreciated.

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

別甾虛僞 2024-11-23 00:17:43

可能您必须循环遍历树节点才能获取 SelectedItem 的索引。您可以使用 OnItemSelected 事件来做到这一点。

Int32 selectedNodeIndex=-1;
private void TreeView1_OnItemSelected(Object sender,RoutedEventArgs e)
{
      Int32 index=0;
      foreach(var _item in TreeView1.Items)
      {
         if(_item==TreeView1.SelectedItem)
         {
                selectedNodeIndex = index;
                break;
         }
          index++;
      }    
}

may you have to loop over tree nodes to get the index of SelectedItem. you can do that using OnItemSelected event.for ex.

Int32 selectedNodeIndex=-1;
private void TreeView1_OnItemSelected(Object sender,RoutedEventArgs e)
{
      Int32 index=0;
      foreach(var _item in TreeView1.Items)
      {
         if(_item==TreeView1.SelectedItem)
         {
                selectedNodeIndex = index;
                break;
         }
          index++;
      }    
}
北方的韩爷 2024-11-23 00:17:43

这篇文章准确讨论了我认为您需要的内容。关于处理 SelectedNodeChanged 事件以及单击当前选定节点时触发的事件的自定义代码...因为 SelectedNodeChanged 不会触发(所选节点实际上并没有改变)。祝你好运!

This post discusses exactly what you need I think. About handling the SelectedNodeChanged event and also a custom piece of code for an event that fires when the currently selected node is clicked...because then the SelectedNodeChanged doesn't fire (the selected node doesn't change actually). Good luck!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文