更改 WPF Toolkit 图表中绘图区域和标题周围的边距

2024-05-06

我正在使用 WPF Toolkit 2010 年 2 月版本的 Chart 控件。图表相对于绘图区域占用了大量空间。

如何控制绘图区域和图表标题周围的边距。这样,我可以将我需要的 10 个图表排列在网格中,而无需在屏幕上使用太多空间。

Thanks,

sprite.


我在 WPF Toolkit 讨论区中找到了类似问题的答案,并认为我应该分享这些知识。

当前唯一可用的解决方案是自己设置图表样式。所以基本上,我从工具包的源代码中获取了原始的样式定义,并对其进行了修改以满足我的需求。我还用它来完全删除图例。

<Grid.Resources>
    <!-- chart style modified from WPFToolkit\DataVisualization\Themes\generic.xaml -->
    <Style TargetType="charts:Chart">
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="charts:Chart">
                    <Grid>
                        <Grid.RowDefinitions>
                            <RowDefinition Height="Auto" />
                            <RowDefinition Height="*" />
                        </Grid.RowDefinitions>
                        <dataVis:Title Content="{TemplateBinding Title}" Style="{TemplateBinding TitleStyle}" Margin="1"/>
                        <!-- Use a nested Grid to avoid possible clipping behavior resulting from ColumnSpan+Width=Auto -->
                        <Grid Grid.Row="1" Margin="5,0,5,0">
                            <Grid.ColumnDefinitions>
                                <ColumnDefinition Width="*" />
                                <ColumnDefinition Width="Auto" />
                            </Grid.ColumnDefinitions>
                            <chartPrmtvs:EdgePanel x:Name="ChartArea" Style="{TemplateBinding ChartAreaStyle}">
                                <Grid Canvas.ZIndex="-1" Style="{TemplateBinding PlotAreaStyle}" />
                                <Border Canvas.ZIndex="10" BorderBrush="#FF919191" BorderThickness="1" />
                            </chartPrmtvs:EdgePanel>
                        </Grid>
                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
</Grid.Resources>

该模板将标题和绘图区域周围的边距降至最低限度,并删除了图例。然后,我在适合我的需求的用户控件中使用了它,并多次重复使用它。

在控件的标头中定义了以下命名空间:

xmlns:dataVis="clr-namespace:System.Windows.Controls.DataVisualization;assembly=System.Windows.Controls.DataVisualization.Toolkit"
xmlns:chartPrmtvs="clr-namespace:System.Windows.Controls.DataVisualization.Charting.Primitives;assembly=System.Windows.Controls.DataVisualization.Toolkit"
xmlns:charts="clr-namespace:System.Windows.Controls.DataVisualization.Charting;assembly=System.Windows.Controls.DataVisualization.Toolkit"

Enjoy!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

更改 WPF Toolkit 图表中绘图区域和标题周围的边距 的相关文章

  • WPF 中的数据绑定?

    我正在尝试在 WPF 中设置数据绑定 我有班级人员 它通过一个文本框进行更新 类似老式的 另一个文本框应该通过数据绑定镜像对人员对象的更改 它曾经是 type twoway 但抛出了xamlparse 异常 它不是这样工作的 点击显示 pe
  • Prism RegionAdapter - 删除然后添加视图

    我有一个包含 AvalonDock 的 prism wpf mef 解决方案 我创建了一个RegionAdapterBase
  • WPF - 在样式中使用 ControlTemplate 资源

    创建样式时 是否可以将 ControlTemplate 属性设置为先前定义的资源 例如 如果我在 ResourceDictionary 中有以下内容
  • 可可豆荚图表未出现(Swift 4)

    我的图表未使用此条形图显示任何条形 我已成功导入图表可可豆荚 目前没有运行时错误 图表中唯一显示的是描述标签 import UIKit import Charts class ViewController UIViewController
  • 从模板绑定到 viewmodel 的属性

    我为我的 GameViewModel 创建了一个视图 我有一些像这样的xaml
  • 拖动用户控件,但将其保留在 WPF 中其父级的边界内

    我有一个用户控件 正在将其拖动到网格内 Z Index 设置得相当高 这样我就可以将其保持在其他孩子之上 拖动控件效果很好 但如果用户想要将控件移到网格之外 它会允许这样做 How do I keep it from leaving the
  • 如何在MVVM中实现对话框架构

    我正在开发一个基于 PRISM 框架 Unity Container 的 WPF 4 0 MVVM 应用程序 我想知道在 mvvm 模式中实现对话框的最佳方法是什么 我计划在我的应用程序中使用相当多的东西 所以我想要一些可重用的东西 由于您
  • 如何在 WPF 中实现虚线或点线边框?

    我有一个ListViewItem我正在申请Style到 我想把灰色虚线作为底部Border 我怎样才能在 WPF 中做到这一点 我只能看到纯色画笔 这在我们的应用程序中效果很好 允许我们使用真正的边框而不是乱用矩形
  • 如何在 Highcharts / Highstock 上显示 x 轴上的十字线选定值和 y 轴上选定的日期?

    我正在研究这个项目 其中包括在交互式图表上显示历史数据 我得出的结论是 Highcharts Highstock 是最好的选择 因为它提供了最多的定制选项 我想要实现的目标是 当我将鼠标悬停在一个点上时 分别在 x 轴和 y 轴上显示所选值
  • 如何在 RichTextBox 中以编程方式移动插入符位置?

    我有一个 RichTextBox 其中的特殊文本位具有自定义格式 但是 存在一个错误 即插入字符后 插入符号会放置在新插入的字符之前而不是之后 这是因为对于每次编辑 代码都会重新计算内容以应用自定义格式 然后像这样设置 CaretPosit
  • 更改鼠标悬停时的矩形背景

    所以我有一个没有背景的矩形 当用户将鼠标悬停在其上时 我想给它一个背景渐变 然后当鼠标离开矩形时删除渐变 请有人发布所需的代码 并告诉我将其放在 cs xaml 文件中的位置吗 Thanks This
  • 如何创建一个显示 Spinners 的 x 和 y 值的表格?

    我想创建一个位于图表右侧的表格 其中显示 2 列 x 和 y 值已输入到xSpin and ySpin旋转器 我已经画了一张我想要桌子放置的位置的图 我尝试过在网格窗格布局中使用文本框来创建表格并将值直接输入到文本框网格中 但是我无法将它们
  • WPF 数据绑定到复合类模式?

    我是第一次尝试 WPF 并且正在努力解决如何将控件绑定到使用其他对象的组合构建的类 例如 如果我有一个由两个单独的类组成的类 Comp 为了清楚起见 请注意省略的各种元素 class One int first int second cla
  • VisualStateManager 和生成的转换

    正当我以为我明白的时候VisualStateManager 有些事情证明我错了 我正在使用 WPF 4 并且尝试简单地在鼠标悬停时放大某个项目 并在鼠标离开时将其缩小 我想我只需定义每个状态VisualStateGroup然后指定一个Vis
  • 如何在 R 或 Python 中制作旭日图?

    到目前为止 我一直无法找到一个可以创建旭日图的 R 库约翰 斯塔斯科 http www cc gatech edu gvu ii sunburst 有人知道如何在 R 或 Python 中实现这一点吗 在极坐标投影中使用 matplotli
  • ListView ItemContainerStyle 模板

    我创建了用作 ListView 项目模板的样式 其中包含 CheckBox 和 TextBlock
  • 如何? WPF 窗口 - 最大化,不调整大小/移动

    我正在尝试创建一个已最大化打开的 WPF 窗口 无需调整大小 移动 在系统菜单中 也不在边框中 它应该一直最大化 除非用户最小化它 我尝试将 WindowState Maximized 和 ResizeMode CanMinimize 放在
  • 如何在运行时添加到 TreeView 目录

    我有一个TreeView我想允许用户添加和删除子项目 在探索基本功能时 我使用button and a textbox添加此子项 当用户点击button a new TreeViewItem需要创建并设置为我的父项的子项TreeView与t
  • Web 客户端和 Expect100Continue

    使用 WebClient C NET 时设置 Expect100Continue 的最佳方法是什么 我有下面的代码 我仍然在标题中看到 100 continue 愚蠢的 apache 仍然抱怨 505 错误 string url http
  • WPF 绑定 CompositeCollection 中的 MenuItem 不起作用

    我在将命令绑定到复合集合中的菜单项时遇到问题 这MenuItem是其一部分ContextMenu这是定义在UserControl Resources 问题是新标签的绑定不起作用 当我将 MenuItem 放置在复合集合之外时 它将起作用 有

随机推荐

  • 比较 TCP 校验和与 Scapy?

    我试图在使用 Scapy 作为嗅探器时识别校验和不正确的数据包 我可以通过访问获得原始校验和 packet TCP chksum 然后我使用删除它 del packet TCP chksum 我想做类似的事情 if originalChec
  • OpenSSL的EVP是什么意思?

    OpenSSL的EVP是什么意思 我知道它是 OpenSSL 中的一个更高级别的加密接口库 但是字母 E V P 代表什么 谢谢 陈兹 有趣的问题 我不确定 但是 ifndefevp h 顶部是 ifndef HEADER ENVELOPE
  • PHP/HTML 添加删除按钮

    我有下面的代码来从数据库中检索行 其中用户名列与基本目录名称匹配 username basename dirname FILE username mysql real escape string username result mysql
  • Android 添加新日历

    我已经检查了所有从 Android 应用程序中创建新日历的方法 我见过的唯一方法是在最新的 api 版本中使用新的 Calendar API 但这似乎只有在您使用时才有效CalendarContract ACCOUNT TYPE LOCAL
  • Java中如何做系统捷径跨平台集成?

    您可能知道 Mac OS X 中保存的快捷键是Cmd S在 Windows 上是Ctrl S 关闭应用程序的捷径是Cmd QWindows 是Alt F4 但问题是如何在 java 应用程序中执行这些操作 我是否需要找到我在应用程序中使用的
  • 将 Swift 类添加到具有多个目标的 Objective-C 项目

    我有一个现有的 Obj C 项目 其中包含许多共享相同 AppDelegate 的目标 我想桥接一个由选定目标使用的快速类 当我有一个目标时 我可以轻松地做到这一点 当我向项目添加 swift 文件时 我选择所需的目标并生成必要的 brid
  • 警告:mysqli_real_escape_string() 需要 2 个参数,其中 1 个给定...我做错了什么? [复制]

    这个问题在这里已经有答案了 我尝试使用 php 登录 但收到此错误 Warning mysqli real escape string expects exactly 2 parameters 1 given 我做错了什么 注册 php
  • 如何生成接口的swagger文档?

    我已经用谷歌搜索过它 但是 swagger 文档的所有示例都使用类 我想包括接口 因为读者对 API 而不是实现感兴趣 这是我的代码 包含所需的 Maven 依赖项
  • 如何在 Laravel 中存储非 php 文件的模板?

    我们可以存储PHP模板文件使用bladeLaravel 中的模板引擎 但是 我想在远程服务器上创建一个配置文件 每个文件包含 20 30 行以上 到目前为止 我一直在使用Perl 我曾经执行 Perl 文件 该文件用于将内容转储到一个文件中
  • 使用 UICollectionViewFlowLayout 重新排列 UICollectionView 的不同大小的项目

    假设我有一个带有 UICollectionViewFlowLayout 的 UICollectionView 并且我的项目大小不同 所以我已经实施了collectionView layout sizeForItemAt 现在假设我允许用户重
  • 了解 Beautiful Soup 中的 Find() 函数

    我知道我想做的事情很简单 但这让我感到悲伤 我想使用 BeautifulSoup 从 HTML 中提取数据 为此 我需要正确使用 find 功能 这是我正在使用的 HTML div class audit div class profile
  • 根据另一个数据框中的数据量删除一个数据框中的行

    我有两个 pandas 数据框A and B B是 A 的子集 我想删除 A 中的所有数字 如果 B 中存在该数字 But 如果一个数字在 A 中出现两次 在 B 中出现 1 次 那么它只会从 A 中删除该数字的 1 次出现 这是我的示例数
  • 在 Visual Studio Code 中找不到“调试:评估”的 CommandID

    我想在 Visual Studio Code 中添加命令 调试 评估 的键盘快捷键 不幸的是 命令 调试 评估 的命令 ID 没有记录 有人知道在哪里可以找到 commandId 吗 editor debug action selectio
  • 对周围的所有 Node JS 框架/库等感到困惑 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我感觉有点困惑 有很多 Node js 相关 东西 的框架 有人能给我一个概述吗 以下库 框架 其他内容如何相互关联 交互 其中包括什么或
  • Sikuli 积分器 C#

    我想在 C 中使用 Sikuli Integrator 我以管理员身份运行 VS 通过 NuGet 管理器安装 Sikuli Integrator 并想在简单任务上测试他 这是我的代码 using SikuliModule using Sy
  • 创建因子时设置级别与 `levels()<-`

    让我们首先创建一些因素 F1 lt factor c 1 2 20 10 25 3 F2 lt factor paste0 F1 years F3 lt F2 levels F3 lt paste0 sort F1 years F4 lt
  • Zurb Foundation:半透明顶栏可能吗?

    有没有办法用 Zurb Foundation 制作一个半透明的顶栏 据我所知 我已经在我的 settings scss file topbar bg color topbar bg topbar dropdown bg topbar dro
  • C#:将字符串编组为 utf8 char* [重复]

    这个问题在这里已经有答案了 背景 我正在尝试基于修改后的 libspotify net 编写一个高级 libspotify 包装器 http libspotifydotnet codeplex com http libspotifydotn
  • Php - 您的 PHP 安装似乎缺少 WordPress 所需的 MySQL 扩展

    如何修复下面的错误 您的 PHP 安装似乎缺少 WordPress 所需的 MySQL 扩展 我使用带有 telnet 连接的 NAS 我安装了FFP 0 7 My php ini is in ffp etc php ini我取消了我认为有
  • 更改 WPF Toolkit 图表中绘图区域和标题周围的边距

    我正在使用 WPF Toolkit 2010 年 2 月版本的 Chart 控件 图表相对于绘图区域占用了大量空间 如何控制绘图区域和图表标题周围的边距 这样 我可以将我需要的 10 个图表排列在网格中 而无需在屏幕上使用太多空间 Than