我正在使用具有“多”选择模式的Windows.UI.Xaml.Controls的Treeview控件。此处我需要在双向绑定中将某些属性绑定为 SelectedItem,以便将选定的节点提取到可枚举集合中。但Windows.UI.Xaml.Controls.TreeView没有 *SelectedItem属性 * 或任何 *selectionChanged事件 *。如何提取选定的节点?
<muxc:TreeView SelectionMode="Multiple" Width="300" x:Name="CategoriesTree"
ItemsSource="{x:Bind _vm.Categories, Mode=OneWay}">
<muxc:TreeView.ItemTemplate>
<DataTemplate x:DataType="local1:CategoriesInfo">
<TreeViewItem ItemsSource="{x:Bind SubCategories}" Content="{x:Bind Name}" />
</DataTemplate>
</muxc:TreeView.ItemTemplate>
</muxc:TreeView>
我尝试在WinUi2中使用Microsoft.UI.Xaml.Controls的TreeView,但它抛出了一个运行时错误
不支持此类接口
Windows. Ui.Xaml创建的。如何执行此操作?
1条答案
按热度按时间5kgi1eie1#
正如您在文档中所看到的,目前没有节点selectionChanged事件。
即使有
TreeView.ItemInvoked
Event当项目的多重选择核取方块被核取或取消核取时,不会引发这个事件。
这里有一个变通办法,你可以处理TreeView中的mouse click event,检测TreeView中SelectedNodes的变化。