Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wpf 为什么稍后要在xaml中定义资源,然后再通过DynamicSource标记扩展使用它?_Wpf_Silverlight - Fatal编程技术网

Wpf 为什么稍后要在xaml中定义资源,然后再通过DynamicSource标记扩展使用它?

Wpf 为什么稍后要在xaml中定义资源,然后再通过DynamicSource标记扩展使用它?,wpf,silverlight,Wpf,Silverlight,我在这个问题中读到: 一个很好的例子是对稍后在XAML中定义的资源的前向引用。那么,为什么要在第一步的后面定义资源并使用DynamicSource,为什么不在使用之前定义它呢 在xaml文件中使用资源之后,有人需要定义资源吗?想象一下,您已经部署了应用程序,然后设计了一些很酷的皮肤。你不想重新部署整个应用程序,只想重新部署皮肤。您只需复制XAML并加载皮肤-使用静态资源,这是不可能的。如果您有循环引用,例如列表中的选定项取决于文本字段的值,而文本字段的值取决于列表中的选定项 一个控件必须在另一

我在这个问题中读到:

一个很好的例子是对稍后在XAML中定义的资源的前向引用。那么,为什么要在第一步的后面定义资源并使用DynamicSource,为什么不在使用之前定义它呢


在xaml文件中使用资源之后,有人需要定义资源吗?

想象一下,您已经部署了应用程序,然后设计了一些很酷的皮肤。你不想重新部署整个应用程序,只想重新部署皮肤。您只需复制XAML并加载皮肤-使用静态资源,这是不可能的。

如果您有循环引用,例如列表中的选定项取决于文本字段的值,而文本字段的值取决于列表中的选定项


一个控件必须在另一个控件之前定义。

但这是第二种情况,皮肤在运行时才可用,不是向前引用,因为它位于单独的文件中。在向前引用中,我们引用一个x:key,比如第10行,然后在同一xaml文件的第100行定义一个x:key资源。