【发布时间】:2018-04-04 07:48:12
【问题描述】:
在我的 Visual Studio 2015 中,XAML 设计器视图无法加载 MainWindow.xaml,它非常大,资源的 Style.xaml 非常大。 它只发生在 x64 配置中,当我切换到 x86 并重新编译时就会消失。 我得到的例外是 InvalidOperationException:必须在 ShaderEffect 上设置 PixelShader。 堆栈跟踪不指向任何行号,并且没有列出我的代码的任何文件,所以这是一个死胡同。 该应用程序运行良好并显示 MainWindow 它只是设计器。 有时从 xaml 中删除一些行甚至一些空格似乎会使其加载,但只是暂时地,它最终会因“System.Runtime.Remoting.RemotingException:设计器进程意外终止!”而崩溃。
堆栈跟踪: 在 System.Windows.Media.Effects.ShaderEffect.ManualUpdateResource(通道通道,布尔型 skipOnChannelCheck) 在 System.Windows.Media.Effects.ShaderEffect.UpdateResource(通道通道,布尔型 skipOnChannelCheck) 在 System.Windows.Media.Effects.ShaderEffect.AddRefOnChannelCore(通道通道) 在 System.Windows.Media.Effects.Effect.System.Windows.Media.Composition.DUCE.IResource.AddRefOnChannel(通道通道) 在 System.Windows.Media.Visual.UpdateEffect(通道通道,ResourceHandle 句柄,VisualProxyFlags 标志,布尔 isOnChannel) 在 System.Windows.Media.Visual.RenderRecursive(RenderContext ctx) 在 System.Windows.Media.Visual.UpdateChildren(RenderContext ctx,ResourceHandle 句柄) 在 System.Windows.Media.Visual.RenderRecursive(RenderContext ctx) 在 System.Windows.Media.Visual.UpdateChildren(RenderContext ctx,ResourceHandle 句柄) 在 System.Windows.Media.Visual.RenderRecursive(RenderContext ctx) 在 System.Windows.Media.Visual.UpdateChildren(RenderContext ctx,ResourceHandle 句柄) 在 System.Windows.Media.Visual.RenderRecursive(RenderContext ctx) 在 System.Windows.Media.Visual.UpdateChildren(RenderContext ctx,ResourceHandle 句柄) 在 System.Windows.Media.Visual.RenderRecursive(RenderContext ctx) 在 System.Windows.Media.Visual.UpdateChildren(RenderContext ctx,ResourceHandle 句柄) 在 System.Windows.Media.Visual.RenderRecursive(RenderContext ctx) 在 System.Windows.Media.Visual.UpdateChildren(RenderContext ctx,ResourceHandle 句柄) 在 System.Windows.Media.Visual.RenderRecursive(RenderContext ctx) 在 System.Windows.Media.Visual.UpdateChildren(RenderContext ctx,ResourceHandle 句柄) 在 System.Windows.Media.Visual.RenderRecursive(RenderContext ctx) 在 System.Windows.Media.Visual.UpdateChildren(RenderContext ctx,ResourceHandle 句柄) 在 System.Windows.Media.Visual.RenderRecursive(RenderContext ctx) 在 System.Windows.Media.Visual.UpdateChildren(RenderContext ctx,ResourceHandle 句柄) 在 System.Windows.Media.Visual.RenderRecursive(RenderContext ctx) 在 System.Windows.Media.Visual.UpdateChildren(RenderContext ctx,ResourceHandle 句柄) 在 System.Windows.Media.Visual.RenderRecursive(RenderContext ctx) 在 System.Windows.Media.Visual.UpdateChildren(RenderContext ctx,ResourceHandle 句柄) 在 System.Windows.Media.Visual.RenderRecursive(RenderContext ctx) 在 System.Windows.Media.Visual.UpdateChildren(RenderContext ctx,ResourceHandle 句柄) 在 System.Windows.Media.Visual.RenderRecursive(RenderContext ctx) 在 System.Windows.Media.Visual.UpdateChildren(RenderContext ctx,ResourceHandle 句柄) 在 System.Windows.Media.Visual.RenderRecursive(RenderContext ctx) 在 System.Windows.Media.Visual.UpdateChildren(RenderContext ctx,ResourceHandle 句柄) 在 System.Windows.Media.Visual.RenderRecursive(RenderContext ctx) 在 System.Windows.Media.Visual.UpdateChildren(RenderContext ctx,ResourceHandle 句柄) 在 System.Windows.Media.Visual.RenderRecursive(RenderContext ctx) 在 System.Windows.Media.Visual.UpdateChildren(RenderContext ctx,ResourceHandle 句柄) 在 System.Windows.Media.Visual.RenderRecursive(RenderContext ctx) 在 System.Windows.Media.Visual.UpdateChildren(RenderContext ctx,ResourceHandle 句柄) 在 System.Windows.Media.Visual.RenderRecursive(RenderContext ctx) 在 System.Windows.Media.Visual.UpdateChildren(RenderContext ctx,ResourceHandle 句柄) 在 System.Windows.Media.Visual.RenderRecursive(RenderContext ctx) 在 System.Windows.Media.Visual.UpdateChildren(RenderContext ctx,ResourceHandle 句柄) 在 System.Windows.Media.Visual.RenderRecursive(RenderContext ctx) 在 System.Windows.Media.Visual.UpdateChildren(RenderContext ctx,ResourceHandle 句柄) 在 System.Windows.Media.Visual.RenderRecursive(RenderContext ctx) 在 System.Windows.Media.Visual.UpdateChildren(RenderContext ctx,ResourceHandle 句柄) 在 System.Windows.Media.Visual.RenderRecursive(RenderContext ctx) 在 System.Windows.Media.Visual.UpdateChildren(RenderContext ctx,ResourceHandle 句柄) 在 System.Windows.Media.Visual.RenderRecursive(RenderContext ctx) 在 System.Windows.Media.Visual.UpdateChildren(RenderContext ctx,ResourceHandle 句柄) 在 System.Windows.Media.Visual.RenderRecursive(RenderContext ctx) 在 System.Windows.Media.Visual.UpdateChildren(RenderContext ctx,ResourceHandle 句柄) 在 System.Windows.Media.Visual.RenderRecursive(RenderContext ctx) 在 System.Windows.Media.Visual.Render(RenderContext ctx,UInt32 childIndex) 在 System.Windows.Media.CompositionTarget.Compile(频道频道) 在 System.Windows.Media.CompositionTarget.System.Windows.Media.ICompositionTarget.Render(布尔 inResize,通道通道) 在 System.Windows.Media.MediaContext.Render(ICompositionTarget resizedCompositionTarget) 在 System.Windows.Media.MediaContext.RenderMessageHandlerCore(对象 resizedCompositionTarget) 在 System.Windows.Media.MediaContext.RenderMessageHandler(对象 resizedCompositionTarget) 在 System.Windows.Threading.ExceptionWrapper.InternalRealCall(委托回调,对象 args,Int32 numArgs) 在 System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
【问题讨论】:
-
是自定义效果吗(和ShaderEffect在同一个解决方案代码中)?
-
@David:不,它不是自定义着色器。我也不知道它指的是哪种效果。该 Style.xaml 中有许多效果,但它们都是标准的。
标签: xaml visual-studio-2015 designer