在新加载的组件中使用WPF资源

时间:2014-07-10 06:45:37

标签: c# wpf vb.net

假设我有这样的代码:

<Grid>
    <Grid.Resources>
        <SolidColorBrush x:Key="myBrush" Color="Black" />
    </Grid.Resources>

    <ContentControl Content="{Binding View}" />
</Grid>

稍后在运行时,我会在Page中添加ContentControl控件。现在我想在我将加载的页面中使用myBrush资源。

例如我的Page是这样的:

<Frame>
    <Page>
        <TextBlock Foreground="...WHAT..." Text="Im in myBrush Color!"/>
    </Page>
</Frame>

我应该在 ... Waht ... 中使用什么来引用myBrush资源?

2 个答案:

答案 0 :(得分:0)

使用StaticResource

<Frame>
    <Page>
        <TextBlock Foreground="{StaticResource myBrush}" Text="Im in myBrush Color!"/>
    </Page>
</Frame>

请参阅MSDN

答案 1 :(得分:0)

我找到了解决方案!

将调用者插件资源与调用插件资源合并就足够了:

Loaded = PluginManager.CreateInstance(plugin.LoadPath, plugin.ClassName)
Loaded.Resources.MergedDictionaries.Add(Me.Resources)