1

我正在编写一个 Silverlight 应用程序,该应用程序将已完成项目的饼图显示为 DataGrid 中的项目。我目前可以使用 DataGridTemplateColumn 将图表显示为 DataGrid 中的一个项目。

我的问题是网格炸毁了数据行的高度,因为它有一个标题和一个图例,周围有很多分配的空白。我只想显示饼图,没有额外的填充或信息。

我找到了一些复杂的样式方法来做到这一点,但它们似乎会引发语法错误(也许它们是 Silverlight 2.0 解决方案?)

有没有人在 Silverlight 3.0 中有这样的工作方式?

提前致谢!

4

2 回答 2

2

如果您想要一个超级节俭的图表,该图表基本上只有一个 ChartArea 并且仅此而已,那么您可以为它提供一个最小的模板:-

<charting:Chart>
    <charting:Chart.Style>
        <Style TargetType="charting:Chart">
            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="charting:Chart">
                        <chartingprimitives:EdgePanel x:Name="ChartArea" />
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>
    </charting:Chart.Style>
    <charting:PieSeries ItemsSource="{Binding}" IndependentValuePath="Value" DependentValuePath="ID" />
</charting:Chart>

注意我使用的是 Nov09 Silverlight 3 工具包。以上仅包含 PieChart 没有边框、填充、标题、图例、渐变背景或除原始图表本身之外的任何内容。

于 2009-12-01T22:12:57.427 回答
0

尝试向饼图添加负边距。这将导致图表在网格中的位置较低并裁剪(不可见)标题。

Margin = "-10,-10,-10,-10"
于 2009-12-01T20:30:54.263 回答