我有一个包含视觉状态的列表框项目模板。我有 DisplayStateBehaviors 将状态设置为开/关状态。我的实现只有 1/2 有效。在初始显示时,无论 DataContext 中的值如何,基本状态都是活动的。当 DataContext 中的数据发生变化时,就会激活适当的状态。
如何在列表框的初始显示上显示正确的状态。
出于安全原因,我无法复制/粘贴 XAML 或 View-Model 代码。
编辑:虽然我无法复制/粘贴真实代码,但下面的骨架有望重现该问题。
在全局可见的资源文件中:
<DataTemplate x:Key="MyObjectItemTemplate">
<Grid>
<VisualStateManager.VisualStateGroups>
... blend goodness ...
</VisualStateManager.VisualStateGroups>
</Grid>
</DataTemplate>
通过将数据上下文与主 UI 中列表框的 ItemsTemplate 属性相关联,将数据上下文传递到数据模板中。
<ListBox ... ItemTemplate="{DynamicResource MyObjectItemTemplate}" .../>