问题标签 [frameworkelement]

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 投票
1 回答
420 浏览

wpf - Detecting whether WPF FrameworkElement is scrolled in

I have just discovered the FrameworkElement.BringIntoView method, which is very useful.

However, I would also like the ability to detect whether an element actually is in view or not. In other words, a function to tell me whether BringIntoView, if I called it, would have to do any scrolling or is the element in question already within the viewable area.

Thanks.

0 投票
4 回答
38631 浏览

c# - 指定元素已经是另一个元素的逻辑子元素。先断网

这是我想将 FrameworkElement 附加到新窗口以将其发布到 PNG 文件时遇到的错误。

所以我的想法是删除父子链接,调用我的方法,然后使用以下代码再次添加子项:

但我得到了完全相同的错误......

我在 SO 上看了很多关于这个错误的问题,但没有人回答我的问题我错过了什么?

编辑:这是对我有用的代码:

0 投票
1 回答
558 浏览

silverlight - 以编程方式获取 SL4 中 FrameworkElement 的 XAML

我尝试FrameworkElementDavidPoll's XamlSerializer序列化 a ,但得到的结果与使用 Silverlight Spy 得到的(右)完全不同。例如,使用 XamlSerializer 我得到了很多空标签(如 MatrixTransform、ScrollViewer 等),但没有ContentPresenter得到 Silverlight Spy 的节点。知道如何在运行时获得干净的逻辑树吗?

更新:我有一个表单设计器程序,将这些表单存储在数据库中,并在运行时根据存储在数据库中的信息创建对象(用户控件)。每个表单都由一些字段组成。在运行时,它以编程方式创建一个包含所有字段的 UserControl。我想获得生成的 XAML,就像我可以使用 Silverlight Spy 获得它一样。

银光间谍

编辑:我不限于 Silverlight 环境,桌面应用程序的解决方案也是有效的。

0 投票
1 回答
2099 浏览

c# - FrameworkElement 的 VisualStateManager.GoToState

我在StackPanelVisualStateManager.

VisualStateManager.GoToState()接受 aControl作为参数,但StackPanel类型为UIElement/ FrameworkElement

我怎样才能调用VisualStateManager.GoToState()一个StackPanel

0 投票
0 回答
101 浏览

wpf - 使用 ContentPresenter 在 wpf 的不同窗口中托管相同的控件实例

  • 我有三个窗口 - Main、sub1 和 sub2。
  • 一个名为 Context 的类(这是我的模型)。
  • 上下文具有FrameworkElement类型的属性,并在 Main 中实例化。
  • 从 Main,我正在实例化 sub1 和 sub2。
  • sub1 的数据上下文设置为 Main 的上下文。
  • sub2 的数据上下文也设置为 Main 的 Context。
  • sub1 和 sub2 具有相似的 xaml。xaml 只是在ContentPresenter中托管Context的FrameworkElement
  • 当我运行应用程序时,FrameworkElement仅托管在 sub2 中。

我知道不可能在两个地方托管相同的实例,但是,当 sub1 和 sub2 被激活时,有没有办法分离和附加内容?

0 投票
1 回答
285 浏览

.net - 如何将 FrameworkElement 保存为非常大的光栅图像?

我必须将我的FrameworkElement保存为非常大的光栅图像。现在我以这种方式使用RenderTargetBitmap类和BitmapEncoder

其中 ElementWidth 和 ElementHeight 是大数字(大约 10000x6000)。但是使用此解决方案时,当我尝试渲染我的元素时会出现 OutOfMemoryException。

还有其他方法可以满足我的需要(不会导致 OutOfMemoryException)?谢谢。

0 投票
2 回答
344 浏览

c# - 对包含透明元素的自定义 FrameworkElement 的整个区域进行命中测试

我有一个自定义控件,它继承自FrameworkElement. 它包含一个Visual包含透明区域的区域。我试图让整个控件区域响应命中测试,但此刻,当我单击显示透明区域的控件的一部分时Visual,单击会传递到底层。

有没有一种方法可以在不使用 hack 的情况下使整个控件可命中测试?

我想远离诸如绘制Visual白色背景之类的技术,或者Border在具有相同事件处理程序集的自定义控件周围添加一个。

提前致谢!

0 投票
2 回答
1949 浏览

wpf - WPF 将 ICommand 绑定到事件 (FrameworkElement.Unloaded)

我正在使用 MVVM 模式,因此我的视图模型对视图一无所知,并且视图通过 DataTemplates 显示。

当视图不再显示时,我想对其进行截图(使用实用程序类)。所以我想绑定到 FrameworkElement.Unloaded,当它命中时,截取用户控件的屏幕截图,以便在另一个控件中使用,以选择要转到的视图。

我读了这篇文章,它看起来好像附加属性可以工作(我在 UserControl 对象上使用它) http://blog.functionalfun.net/2008/09/hooking-up-commands-to-events-在-wpf.html

我收到绑定只能在 DependencyObject 或 DependencyProperty 上设置的错误。我正确地遵循了他的指示。知道为什么这不起作用或如何在 MVVM 场景中绑定到它吗?

是否无法绑定到该特定事件或根 xaml 节点中的事件?

这是代码(除了上面链接中的 EventBehaviorFactory)

确切的错误是

不能在“CustomerView”类型的“SetUnloadedCommand”属性上设置“绑定”。只能在 DependencyObject 的 DependencyProperty 上设置“绑定”。

0 投票
1 回答
1913 浏览

wpf - WPF 将 FrameworkElement 事件绑定到命令

如何将UserControl'sFrameworkElement事件绑定到视图模型命令?我使用 MVVM 和 Prism,因此视图模型之间的清晰分离会很好。

我尝试了多种方法,但都没有奏效:

也使用本教程http://blog.functionalfun.net/2008/09/hooking-up-commands-to-events-in-wpf.html

我是否别无选择,只能在我的代码隐藏中添加一些功能?

上述尝试均未出错,但命令未执行。

这是我的视图模型:

0 投票
0 回答
99 浏览

c# - 当容器大小改变时重新分配容器中的精灵

我在 WPF 中遇到问题。我想重新分配容器中的小精灵以响应其大小的变化。

如果我对容器应用渲染或布局变换,精灵的形状会随着它们的位置一起变换(例如,圆形变成椭圆,线条变得更粗/更细)。

除了遍历容器的所有孩子并更新它们的位置之外,有没有办法以任何其他方式自动重新分配精灵?

(我有 A,并且想去 C 以响应容器大小的变化。可以使用转换获得 B。)

在此处输入图像描述