- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已使用 EventTriggerBehavior 和 CallMethodAction 成功将事件转换为方法(在ViewModel中使用),如以下示例所示(此处选择了一个页面 Loaded 事件进行说明)。<i:Interaction.Behaviors>
<core:EventTriggerBehavior EventName="Loaded">
<core:CallMethodAction TargetObject="{Binding Mode=OneWay}" MethodName="PageLoadedCommand"/>
</core:EventTriggerBehavior>
</i:Interaction.Behaviors>
但是,当涉及到 VisualStateGroup 的 CurrentStateChanged 事件时,如下所示(是的,嵌套在<VisualStateGroup>
块中,因为 CurrentStateChanged 事件属于 VisualStateGroup 事件),没有成功:<i:Interaction.Behaviors>
<core:EventTriggerBehavior EventName="CurrentStateChanged">
<core:CallMethodAction MethodName="CurrentVisualStateChanged" TargetObject="{Binding Mode=OneWay}"/>
</core:EventTriggerBehavior>
</i:Interaction.Behaviors>
我怀疑VisualStateGroup(或VisualStateManager)和 CurrentStateChanged 事件可能存在问题。我说这是因为,我可以采用这种方法来处理其他事件。我已经检查并重新检查了 CallMethodAction 方法签名(事件参数传递格式),但是没有机会。
如果您如上所述成功触发了 CurrentStateChanged 事件触发(或使用其他方法),我非常想知道。
最佳答案
However, no success when it comes to the CurrentStateChanged event of VisualStateGroup as shown below
public class MainViewModel : ViewModelBase
{
public enum ViewModelState
{
Default,
Details
}
private ViewModelState currentState;
public ViewModelState CurrentState
{
get { return currentState; }
set
{
this.Set(ref currentState, value);
OnCurrentStateChanged(value);
}
}
public RelayCommand GotoDetailsStateCommand { get; set; }
public RelayCommand GotoDefaultStateCommand { get; set; }
public MainViewModel()
{
GotoDetailsStateCommand = new RelayCommand(() =>
{
CurrentState = ViewModelState.Details;
});
GotoDefaultStateCommand = new RelayCommand(() =>
{
CurrentState = ViewModelState.Default;
});
}
public void OnCurrentStateChanged(ViewModelState e)
{
Debug.WriteLine("CurrentStateChanged: " + e.ToString());
}
}
关于c# - VisualStateGroup的ViewModel方法事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33549067/
我有一个 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
我是一名优秀的程序员,十分优秀!