0

我一直在网上搜寻类似的问题,但找不到任何可以解决我问题的东西。

我有一个包含全局变量的静态类,其中一些是我希望能够在我的 xaml 控件中绑定的颜色变量,这样我只需更改一个变量即可更改批次(全局变量的原因)。

类命名空间是MyApp.Assets.Resources类名是Global(.cs)。在我的课堂上,我有名为DEFAULTCOLOROKCOLOR的变量ALARMCOLOR

我的xml:

<UserControl
    <!-- ... -->
    xmlns:custom="clr-namespace:InspectionDB.Assets.Resources"
>
    <UserControl.Resources>
        <custom:Global x:Name="global"/> <!-- THIS GIVES AN ERROR SEE BELOW-->

        <common:HierarchicalDataTemplate x:Key="Level1" ItemsSource="{Binding Path=Children}">
            <StackPanel Orientation="Horizontal">
                <Image Source="{Binding Type, Converter={StaticResource localTreeImgConverter}}"/>
                <TextBlock {Binding...} />
                <StackPanel Orientation="Horizontal" Visibility="{Binding Type, Converter={StaticResource localStatusVisibilityConverter}}">
                    <TextBlock Margin="5,0, 0,0" Text="[ " Foreground="{Binding DEFAULTCOLOR, Source={StaticResource global}}" />
                    <TextBlock Text="{Binding Critical}" Foreground="{Binding ALARMCOLOR, Source={StaticResource global}}"/>
                    <TextBlock Text=" | " Foreground="{Binding DEFAULTCOLOR, Source={StaticResource global}}"/>
                    <TextBlock Text="{Binding OK}" Foreground="{Binding OKCOLOR, Source={StaticResource global}}"/>
                    <TextBlock Text=" ]" Foreground="{Binding DEFAULTCOLOR, Source={StaticResource global}}"/>
                </StackPanel>
            </StackPanel>
        </common:HierarchicalDataTemplate>

    </UserControl.Resources>

    <Grid>
        <!-- Where the hierarchical template is used --> 
    </Grid>

</UserControl>

资源中的部分以及绑定都会引发错误:

Unable to cast object of type 'ApplicationProxy' to type 'Microsoft.Expression.DesignModel.DocumentModel.DocumentNode'.

我的代码有什么问题,我怎样才能让它工作?

4

1 回答 1

0

我发现我的问题是什么,因此我找不到任何类似的情况。

我有public class Global : App- 不要问我为什么,我确信很久以前就有一个正当的理由,但这意味着它正在进行某种时髦的循环引用。

问题解决了。

于 2012-07-26T16:02:44.367 回答