在 WPF MVVM 解决方案中,我使用后台工作程序来显示繁忙的指示符,同时获取一些数据并填充(telerik)树视图。当我的(父)用户控件(持有 TreeView 和 RadBusyIndicator)被加载时,我正在尝试执行此操作:
private void UserControl_Loaded(object sender, RoutedEventArgs e)
{
BackgroundWorker bg = new BackgroundWorker();
bg.DoWork += (object sender_, DoWorkEventArgs e_) =>
{
GetData();
};
bg.RunWorkerCompleted += (object sender_, RunWorkerCompletedEventArgs e_) =>
{
TreeView.ExpandAll();
IsBusy = false;
};
IsBusy = true;
bg.RunWorkerAsync();
}
数据获取工作正常,树视图的项目源设置正常。一切正常,除了TreeView.ExpandAll().
XAML 代码:
<telerik:RadTreeView x:Name="TreeView" HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch" SelectionMode="Single" ItemTemplate="{StaticResource OrderTemplate}" ItemsSource="{Binding Orders, Mode=OneWay}" SelectedItem="{绑定 SelectedItem,Mode=OneWayToSource}" telerik:TreeViewPanel.TreeVirtualizationMode="Recycling" >
树视图的顶部节点出现,但底层项目未展开。我必须单击它们打开(效果很好)。知道为什么树视图没有扩展吗?我能做些什么来完成这项工作?