WPF - RichTextBox 上的滚动条和背景的样式

发布于 2024-08-12 01:22:33 字数 51 浏览 3 评论 0原文

为 RichTextBox 创建包含滚动条视觉效果和文本后面空间背景颜色的样式需要什么?

What's required to create a style for a RichTextBox that includes visuals for the scrollbars and a background color for the space behind the text?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

撩人痒 2024-08-19 01:22:34

向 RichTextBox 的滚动条添加视觉效果
(或以其他方式修改这些滚动条的外观)

假设您要求为 RichTextBox 的滚动条创建自定义视觉样式(例如,向其添加新图标),您只需在 Expression Blend 中单击几下即可完成此操作:

  1. 绘制 <使用 RichTextBox 工具将 code>RichTextBox 添加到窗口中
  2. 从菜单中选择 Edit Style >编辑副本
  3. 为 RichTextBox 样式选择一个名称,然后选择要存储它的字典。
  4. 按 F11 查看 XAML,用 替换新样式的内容; TextBoxBase 样式的部分,然后返回到设计视图
  5. 在“资源”选项卡中删除 TextBoxBase 样式和 TextBoxBorder 画笔
  6. 在“资源”选项卡中双击 RichTextBoxStyle 以再次打开它
  7. 右键单击​​ RichTextBox 并选择 编辑控制部件(模板)>编辑模板
  8. 右键单击PART_ContentHostScrollViewer并选择编辑控件部件(模板)>编辑副本
  9. 为新的 ScrollViewer 模板选择名称

此时,您可以通过执行以下两项操作之一将您喜欢的任何视觉元素添加到水平和垂直滚动条: 1. 右键单击滚动条并选择Group Into >网格 (Ctrl-G),然后向其中添加视觉效果,或者 2. 右键单击​​滚动条并选择编辑控件部件(模板)>再次编辑副本以装饰滚动条的各个部分,例如拇指或箭头。

上面解释了如何添加创建将自定义视觉效果添加到 RichTextBox 滚动条的样式。当然,除非需要滚动,否则滚动条实际上​​不会出现,或者通过以下方式强制滚动条可见:

<RichTextBox ScrollViwer.VerticalScrollBarVisibilty="Visible" ...

设置文本后面空间的背景颜色

这本身就是简单。只需设置背景属性:

<RichTextBox Background="Purple" ...

Adding visuals to a RichTextBox's scroll bars
(or otherwise modifying the look of those scrollbars)

Assuming you are asking to create custom visual style for RichTextBox's scrollbars (for example, to add new icons to them), you can do this with just a few clicks in Expression Blend:

  1. Draw a RichTextBox onto your window using the RichTextBox tool
  2. From the menu select Edit Style > Edit a Copy
  3. Choose a name for the RichTextBox style and select which dictionary to store it in
  4. Hit F11 to see the XAML, replace the contents of your new style with the <Setter Property="Template"> sction of the TextBoxBase style, then return to Design View
  5. In the Resources tab delete the TextBoxBase style and TextBoxBorder brush
  6. Double-click your RichTextBoxStyle in the Resources tab to open it again
  7. Right-click the RichTextBox and select Edit Control Parts (Template) > Edit Template
  8. Right-click the PART_ContentHost ScrollViewer and select Edit Control Parts (Template) > Edit a Copy
  9. Choose a name for new ScrollViewer template

At this point you can aad whatever visual elements you like to the horizontal and vertical scrollbars by doing one of two things: 1. Right-clicking a scrollbar and choosing Group Into > Grid (Ctrl-G), then adding Visuals to it, or 2. Right-clicking a scrollbar and choosing Edit Control Parts (Template) > Edit a Copy again to decorate individual parts of the scrollbar such as the thumbs or the arrows.

The above explains how to add create a style that adds custom visuals to the scrollbars of a RichTextBox. Of course the scrollbars won't actually appear unless scrolling is necessary or they are forced to be visible with eg:

<RichTextBox ScrollViwer.VerticalScrollBarVisibilty="Visible" ...

Setting the background color for the space behind the text

This is simplicity itself. Just set the Background property:

<RichTextBox Background="Purple" ...
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文