首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >WPFToolkit覆盖ColumnDataPoint模板

WPFToolkit覆盖ColumnDataPoint模板
EN

Stack Overflow用户
提问于 2014-05-02 19:52:02
回答 1查看 809关注 0票数 0

我使用WPF Tookit (http://wpf.codeplex.com/),并使用图表控件使用ColumnSeries生成列图。但是,当我运行应用程序时,列不再呈现,我在调试输出日志中看到了一个ColumnDataPoint和"System.Xaml.XamlObjectWriterException“。我是不是做错了什么,还是过时的WPF工具包的问题?谢谢。

包括:

代码语言:javascript
运行
复制
xmlns:chartingToolkit="clr-namespace:System.Windows.Controls.DataVisualization.Charting;assembly=System.Windows.Controls.DataVisualization.Toolkit"

图表:

代码语言:javascript
运行
复制
<chartingToolkit:Chart  Name="columnChart" Title="Results" >
     <chartingToolkit:ColumnSeries DataPointStyle="{DynamicResource ModernColumnStyle}" DependentValuePath="Count" IndependentValuePath="Method" ItemsSource="{Binding Results}" />
</chartingToolkit:Chart>

带有样式的资源:

我从原始源中所做的唯一改变就是删除了VisualStateManager内容

代码语言:javascript
运行
复制
<Grid.Resources>
    <Style TargetType="chartingToolkit:ColumnDataPoint" x:Key="ModernColumnStyle" BasedOn="{StaticResource {x:Type chartingToolkit:ColumnDataPoint}}">
            <Setter Property="Template">
                <Setter.Value>
                <ControlTemplate TargetType="chartingToolkit:ColumnDataPoint">
                    <Border BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Opacity="0" x:Name="Root">
                        <Grid Background="{TemplateBinding Background}">
                            <Rectangle>
                                <Rectangle.Fill>
                                    <LinearGradientBrush>
                                        <GradientStop Color="#77ffffff" Offset="0" />
                                        <GradientStop Color="#00ffffff" Offset="1" />
                                    </LinearGradientBrush>
                                </Rectangle.Fill>
                            </Rectangle>
                            <Border BorderBrush="#ccffffff" BorderThickness="1">
                                <Border BorderBrush="#77ffffff" BorderThickness="1" />
                            </Border>
                        </Grid>
                        <ToolTipService.ToolTip>
                            <ContentControl Content="{TemplateBinding FormattedDependentValue}" />
                        </ToolTipService.ToolTip>
                    </Border>
                </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>
</Grid.Resources>
EN

回答 1

Stack Overflow用户

发布于 2015-03-20 15:17:48

也许您应该将"DynamicResource“改为"StaticResource”,如下所示:

代码语言:javascript
运行
复制
<chartingToolkit:ColumnSeries DataPointStyle="{StaticResource ModernColumnStyle}" DependentValuePath="Count" IndependentValuePath="Method" ItemsSource="{Binding Results}" />
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23435900

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档