问题标签 [visualstatemanager]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
592 浏览

silverlight - Silverlight - 平滑的可见性变化

我有一个 Grid 有 2 行,其中第二行有 Visibility.Collapsed 默认情况下。我希望它在网格上的 MouseEnter 上更改为 Visibility.Visible,然后在 MouseLeave 上更改。这很简单并且完成了。

但是,我希望 Visible 和 Collapsed 之间的过渡不是即时的而是平滑的。

我相信我可以用 VisualStateManager 以某种方式做到这一点,但我不确定如何,所以任何指导都值得赞赏。

0 投票
2 回答
1191 浏览

silverlight - VisualStateManager 什么都不做 (silverlight)

我正在使用 studio 2010 和 silverlight 4 构建自定义控件。我正在尝试使用视觉状态管理器。

使用以下 xml:

当我将鼠标悬停在图像上时没有任何反应。当鼠标悬停在图像上时,如何放大图像?

谢谢

0 投票
1 回答
1706 浏览

wpf - 开始折叠的 VisualState 会干扰 WPF .NET 4 中的其他动画

我正在使用 .net 4,vs2010 并创建了一个用户控件,该控件需要开始折叠和透明(不透明度 0)并响应按钮单击而变得可见和不透明。

但是,当我从父用户控件定位此控件并触发 HelpOpen 视觉状态时,我注意到帮助控件在动画完成后突然出现 - 它没有按预期淡入。

我相信这是因为帮助控件仅在动画结束时才可见,因此不呈现增加不透明度的过渡。

有没有办法指定在调整不透明度值之前将可见性属性设置为可见?

0 投票
1 回答
2674 浏览

wpf - 通过将控件与 ViewModel 的某些属性绑定来更改控件的 VisualState

考虑下面的代码:

我正在尝试通过将其绑定到 ViewModel 中的某个属性来设置切换按钮的 VisualState。在这里,我无法在“添加引用”列表中找到 Microsoft.Expression.Interactivity.dll。我正在使用 VS 2010。我错过了什么?我需要安装 Expression blend 来获取这个 dll 吗?

另外,还有其他方法可以完成工作吗?(通过使用 ViewModel 的某些属性来更改控件的 VisualState)。

感谢您的关注。

0 投票
1 回答
1045 浏览

silverlight - 如何在 Silverlight 4 UserControl 中动态地为属性设置动画?

我在 Silverlight 4 UserControl 中遇到了一个令人费解的限制。

我想要实现的是有一个面板,当按下按钮时,它会从最小化状态滑出,但它的标题栏应该是可拖动的,可以调整这个最大化状态的大小。

我为滑出所做的是为此面板的父网格的 MaxHeight 属性设置动画,即使面板没有硬编码的高度,它也能很好地工作,但我不知道如何使这个动态。

尝试将代码隐藏中的变量绑定到“DoubleAnimation”的“To”参数不起作用,它只是默默地被忽略。

当我创建用户控件来表示视图时,具有 x:Name 属性的元素不会自动生成。

我尝试使用下面的代码来解决此问题,该代码模仿了自动生成的代码中发生的情况(额外的好处是仅在实际加载布局后才完成):

但是,当尝试设置 To 的值时,这会中断,因为 FindName 返回 null(我在 XAML 中为这个特定动画手动设置了 x:Name 为“PanelOpenMaxHeightDoubleAnimation”)。我有一个偷偷摸摸的怀疑 FindName 不能从 VisualStates 中选择 DoubleAnimations,只有实际的布局子项?

我确实在http://msdn.microsoft.com/en-us/library/cc189026(v=VS.95).aspx#UserControls找到了有关 XAML 名称范围的文档,但我并没有真正理解我的选择是什么段落(除了非常有限):

对于 UserControl 的情况,定义 XAML 中的 UserControl 部分没有等效的模板部分属性约定,也根本没有应用模板。尽管如此,定义和使用之间的名称范围仍然是断开的,因为定义名称范围是定义的,然后在您将 UserControl 打包到程序集中以供重用时有效地密封。此处的最佳实践是定义您的 UserControl,以便需要设置以修改定义 XAML 的任何值也作为 UserControl 的公共属性公开。

最后一句是什么意思?

想知道我下一步可以做什么?我应该尝试从代码生成整个状态吗?

0 投票
1 回答
2121 浏览

wpf - 在 VisualState Storyboard 中使用绑定

我正在为 WPF 应用程序编写自定义控件。我想StoryboardVisualState定义中使用彩色动画。该To动画的属性应该绑定到我的控件对象的依赖属性。这似乎不起作用。

我在 Silverlight 论坛中发现了一个线程,描述了完全相同的问题,其中声称这在 SL4 RTM 中有效:http ://forums.silverlight.net/forums/p/174655/423324.aspx 。但是,当我尝试使用 VS2010 WPF 应用程序中发布的代码时,它不起作用,这意味着颜色不会改变。我能够在 a 中做的唯一绑定VisualState Storyboard是 to StaticResource

有任何想法吗?

编辑:

添加了代码片段:

来自 Generic.xaml:

TestCustomControl.cs:

0 投票
1 回答
96 浏览

silverlight - Silverlight 数据影响外观 .. VisualStateManger .. 根据数据值显示颜色

在 Silverlight 中,我如何让按钮的颜色根据其内容的值进行更改.. 例如 '0' = red ,'1' = green ..

我已经查看了 VisualStateManger,但看不到该怎么做.. 我可以看到鼠标悬停等很容易.. 但对于数据值则不然。

0 投票
1 回答
1923 浏览

silverlight - 如何在两个(或多个)XAML 文件之间共享 VisualStateManager?

我们正在编写一个基于 Prism 的 Silverlight 应用程序,并且我们在不同的模块中有一大堆页面。

页面之间的转换是通过导航事件处理的,每个模块都实现了以下方法来在导航到时显示页面并在导航到时隐藏页面:

目前在每个模块的 XAML 文件中定义了“ShowState”和“HideState”,因此重复了太多次。

其中...代表Storyboard每个转换的。

我刚刚在Storyboard定义中发现了一个错误,目前我将不得不在所有文件中复制修复。如果Storyboard每个文件中只有一个可以引用的定义会更好。

我整个上午都在寻找正确的语法,但一直没有运气。

如何VisualStateManager在我们所有的 XAML 文件之间共享它?

0 投票
1 回答
1143 浏览

silverlight - 如何知道 Silverlight VisualStateManager.GoToState 转换何时完成?

我正在使用 SilverlightVisualStateManager.GoToState方法将我的控件从一种状态转换到另一种状态。这一切都很好,过渡动画效果很好。但我想知道转换何时完成,以便我可以在我的代码中启动其他操作。是否有一个事件或其他机制可以用来发现到另一个状态的转换何时完成?

0 投票
1 回答
713 浏览

silverlight - Silverlight 4:转换时出现 ExtendedVisualStateManager 错误

所以我有一个具有 3 个状态的控件,每个状态切换控件的可见性,并且使用 FluidLayout 进行动画处理。这在预览过渡时混合使用,但是当我在浏览器中从第一个状态转到第二个状态时,出现以下错误。

网页错误详情

用户代理:Mozilla/4.0(兼容;MSIE 8.0;Windows NT 6.1;WOW64;Trident/4.0;SLCC2;.NET CLR 2.0.50727;.NET CLR 3.5.30729;.NET CLR 3.0.30729;Media Center PC 6.0; .NET4.0C;.NET4.0E;InfoPath.3) 时间戳:2010 年 12 月 17 日星期五 15:40:32 UTC

消息:Silverlight 应用程序代码中未处理的错误:4004
类别:ManagedRuntimeError
消息:System.ArgumentException:值不在预期范围内。在 MS.Internal.XcpImports.CheckHResult(UInt32 hr) 在 MS.Internal.XcpImports.Collection_AddValue[T](PresentationFrameworkCollection 1 collection, CValue value) at MS.Internal.XcpImports.Collection_AddDependencyObject[T](PresentationFrameworkCollection1 集合,DependencyObject 值)
在 System.Windows.PresentationFrameworkCollection 1.AddDependencyObject(DependencyObject value) at System.Windows.Controls.UIElementCollection.AddInternal(UIElement value) at System.Windows.PresentationFrameworkCollection1.Add(T 值) 在 Microsoft.Expression.Interactivity .Core.ExtendedVisualStateManager.WrapMovingElementsInCanvases(列表1 movingElements, Dictionary2 oldRects, Dictionary`2 newRects) at Microsoft.Expression.Interactivity.Core.ExtendedVisualStateManager.GoToStateCore(Control control, FrameworkElement stateGroupsRoot, String stateName, VisualStateGroup group, VisualState state, Boolean useTransitions) at System.Windows.VisualStateManager.GoToState(Control control , String stateName, Boolean useTransitions) 在 Microsoft.Expression.Interactivity.VisualStateUtilities.GoToState(FrameworkElement element, String stateName, Boolean useTransitions) 在 Microsoft.Expression.Interactivity.Core.GoToStateAction.InvokeImpl(FrameworkElement stateTarget) 在 Microsoft.Expression.Interactivity。 System.Windows.Interactivity.TriggerAction.CallInvoke(对象参数)在 System.Windows.Interactivity.TriggerBase 的 Core.GoToStateAction.Invoke(对象参数)。InvokeActions(Object parameter) at System.Windows.Interactivity.EventTriggerBase.OnEvent(EventArgs eventArgs) at System.Windows.Interactivity.EventTriggerBase.OnEventImpl(Object sender, EventArgs eventArgs) at I2.Web.Reports.Models.MainModel.Service_GetUserCompleted(Object发件人,GetUserCompletedEventArgs e)
在 I2.Web.Reports.Services.ReportServiceClient.OnGetUserCompleted(对象状态)

其他人有类似的问题吗?