问题标签 [dependencyobject]

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 回答
682 浏览

silverlight - 如何对创建 DependencyObjects 的 Silverlight ValueConverters 进行单元测试

我有一个 Silverlight ValueConverter,它应该采用 aenum并将其转换为Brush. 像这个简化的例子:

如果我想对此进行单元测试,它将无法正常工作。我得到这个例外:

我知道这是因为在我的 (NUnit) 单元测试中,加载的 CLR 与运行 Silverlight 应用程序时不同。我知道我不应该在 unit-tests 中测试 UI,但这只是测试我的 ValueConverter,所以我认为这是一个有效的测试。

有谁知道这是否以及如何可测试?

0 投票
1 回答
725 浏览

c# - 创建一个“接受”直接内容的 DependencyObject

我正在创建一个应该在空 XAML 文件中使用的自定义时间:

如何有效地允许我的自定义类 BlackAndWhite 窗口(从 DependencyObject 和 IDisposable 继承)允许接受从 Visual Studio 定义的那些作为“直接内容”?

0 投票
1 回答
949 浏览

wpf - 如何避免 '[Unknown]' 属性不指向路径 '(0).(1)[1].(2)' 中 wpf 异常中的 DependencyObject

单击按钮时,更新ListBox ItemsSource集合。对于 4 或 5 次单击,它工作正常,但之后它会引发异常,因为 '[Unknown]' 属性不指向DependencyObject路径 '(0).(1)[1].(2)'

我用谷歌搜索并找到它的原因。

“ElementControl 覆盖 PrepareContainerForItemOverride 并调用 PrepareModel 将网格插入到每个项目的 _modelContainer 中。稍后在 ElementFlow.BuildTargetPropertyPath(通过 ElementFlow.SelectItemCore -> LayoutBase.SelectElement -> ElementFlow.PrepareTemplateStoryboard 调用)中假设这样的网格具有已插入 _modelContainer。当网格尚未插入 _modelContainer 时会发生此异常。WPF 在 ApplyTemplate 上调用 PrepareContainerForItemOverride。这仅执行一次。以后添加的项目永远不会像那样处理。“

所以请给我一个解决方案来克服它。

0 投票
1 回答
139 浏览

wpf - 图像源不会根据依赖对象而改变

我正在尝试根据我定义如下的依赖对象来设置我的图像样式:

在 MainWindow.xaml 中:

存储库代码如下所示:

如果连接成功,我将 IsConnect 设置为 true。

但由于某种原因,图像并没有根据这个对象发生变化......并且知道有什么问题吗?

0 投票
3 回答
593 浏览

silverlight - 在转换器中绑定?

我正在尝试制作一个继承自的自定义转换器DependencyObject,但它不起作用:

转换器:

xml:

我错过了什么吗?

0 投票
2 回答
395 浏览

silverlight-5.0 - 如何从 SL5 中的标记扩展更新目标对象?

我正在 Silverlight 5 的标记扩展中尝试此代码。

depObj 似乎提供正确,但 depProp 似乎不是 DependencyProperty 类型(类型是 Sytem.String(System.Reflection.PropertyInfo))。强制转换结果为 null。

depProp 代表正确的 Text 或 Content 属性,但如果没有它是 DependencyProperty,我无法设置它的值。

非常感谢任何输入。

西科

0 投票
3 回答
1246 浏览

c# - 使用其他线程创建的对象

我只想在另一个线程中更改窗口的背景。有两个程序,一个是正常工作,另一个抛出 InvalidOperationException。

正确的代码:

错误代码:

这些代码的不同之处在于,错误代码在子线程中创建了 ImageBrush 对象。所以我的问题是:在wpf程序中,线程是否只能使用自己线程创建的对象?感谢您的回复。

0 投票
1 回答
214 浏览

c# - 了解依赖属性系统

有人可以帮我弄清楚WPF中的依赖属性系统吗?!我只是想做这样的事情:

假设,A 类有一个名为“A_property”的属性 (DP)。另一个 B 类只代表一些业务逻辑,我希望这个类能够监视“A_property”。我的意思是 B 类应该订阅 A 类的属性。如果有人这么好,请给我一个示例,如何使用依赖属性系统来做到这一点?

PS我很清楚如何使用RoutedEvent解决上述问题,但在我看来DP系统应该简化解决方案。

提前致谢!

0 投票
1 回答
2115 浏览

c# - Windows 8 应用程序的 ViewModel 中的依赖属性与 INotifyPropertyChanged

我创建了空白 C#/XAML Windows 8 应用程序。添加简单的 XAML 代码:

以及 C# 部分中的简单代码:

现在我要实施ViewModel. 我有两种方法:

  1. 使用依赖属性
  2. 实施INotifyPropertyChanged

对于第一种方法,它是:

其次是:

我更喜欢第一种方式,因为它允许使用强制(用于 web 和 WP7 的 Silverlight 没有强制功能.. WinRT 也是.. 但我仍在寻找和希望)并且对我来说看起来更自然。但不幸的是,它作为第一种方法的OneTime工作。

谁能向我解释为什么 MS 放弃使用依赖属性来实现视图模型?

0 投票
1 回答
1117 浏览

silverlight - DependencyObject 的绑定上下文

我试图了解 Silverlight 依赖属性系统的低级细节。

我意识到 DependencyObject 没有明确的 DataContext 属性,甚至没有父级的概念。

然而,从 DependencyObject 派生的 Behavior 类具有绑定,它使用它所附加的 DataContext 作为自身绑定的 Source。

我的问题是:我可以从 DependencyObject 派生一个类并以某种方式确定要在 Source 处使用哪个其他对象进行绑定吗?或更清楚地说:如何实现类似 Behavior 类的东西?