- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有一个 ui 控件的 XAML(它继承自一个按钮)并且其中有各种视觉状态组,如下所示:
<vsm:VisualStateGroup x:Name="CommonStates">
<vsm:VisualState x:Name="Normal"/>
<vsm:VisualState x:Name="MouseOver">
</vsm:VisualState>
<vsm:VisualState x:Name="Pressed">
<Storyboard>
<ColorAnimation Duration="0" To="Green" Storyboard.TargetName="border" Storyboard.TargetProperty="(UIElement.Background).(SolidColorBrush.Color)" />
<DoubleAnimation Duration="0" To="0.94" Storyboard.TargetName="border" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleX)" />
<DoubleAnimation Duration="0" To="0.94" Storyboard.TargetName="border" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleY)" />
</Storyboard>
</vsm:VisualState>
<vsm:VisualState x:Name="Disabled">
<Storyboard/>
</vsm:VisualState>
</vsm:VisualStateGroup>
<vsm:VisualStateGroup x:Name="MyState">
<vsm:VisualState x:Name="Pressed_Green">
<Storyboard>
<ColorAnimation Duration="0" To="Yellow" Storyboard.TargetName="border" Storyboard.TargetProperty="(UIElement.Background).(SolidColorBrush.Color)" />
<DoubleAnimation Duration="0" To="0.94" Storyboard.TargetName="border" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleX)" />
<DoubleAnimation Duration="0" To="0.94" Storyboard.TargetName="border" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleY)" />
</Storyboard>
</vsm:VisualState>
</vsm:VisualStateGroup>
</vsm:VisualStateManager.VisualStateGroups>
在 onapplytemplte 函数的代码隐藏中,我尝试:
VisualStateManager.GetVisualStateGroups(this).Count
但是返回值是'0',不应该是2吗?
最佳答案
VisualStateManager.VisualStateGroups在控件的控件模板中的根元素上设置(即 this
),而不是在控件本身上。您需要为您的根元素提供一个 x:Name
,然后使用 GetTemplateChild 访问它.
关于c# - 未找到 VisualStateGroups?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5891157/
我有一个 ui 控件的 XAML(它继承自一个按钮)并且其中有各种视觉状态组,如下所示:
有什么办法可以分开VisualStateManager.VisualStateGroups成ResourceDictionary ? 基本上我想要类似的东西 但它显然
我创建了许多按钮,它们在我的 Windows Phone 项目中使用相同的 VisualStateManager、VisualStateGroup 和 VisualState。然后,我想将它们全部重用
我正在使用 VS2008 EE SP1 + WPF + XAML。一开始我添加了对它的引用: xmlns:vsm="clr-namespace:System.Windows;assembly=Syst
我有一个继承自 UserControl 的基类 SecurePage。 应用程序内的每个“页面”都继承自 SecurePage。 我想在 SecurePage 的默认 Style 中定义一个带有一些
在带有 MVVM Light 的 UWP 应用程序中,我试图绑定(bind) VisualStateGroup 的当前状态到 ViewModel 中的一个属性。这个想法是通过根据应用程序逻辑更改 Vi
我是一名优秀的程序员,十分优秀!