You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AvalonEdit中如何修改折叠标记(FoldingMarker)的颜色?

修改AvalonEdit折叠标记(FoldingMarker)颜色的方法

要修改折叠标记的颜色,核心是找到FoldingMargin实例并修改其对应的Brush属性,具体步骤如下:

  • 获取FoldingMargin实例:当你通过FoldingManager.Install启用折叠后,AvalonEdit会自动在文本区域的边距集合中添加FoldingMargin,可以通过遍历TextArea.Margins来找到它:

    using ICSharpCode.AvalonEdit.Folding;
    using System.Linq;
    using System.Windows.Media;
    
    // 假设textEditor是你的AvalonEdit控件实例
    var foldingMargin = textEditor.TextArea.Margins.OfType<FoldingMargin>().FirstOrDefault();
    
  • 修改标记颜色:找到实例后,直接修改对应的Brush属性即可,常用的属性包括:

    • CollapsedMarkerBrush:代码块折叠状态下的标记颜色
    • ExpandedMarkerBrush:代码块展开状态下的标记颜色
    • FoldingMarkerBrush:部分版本中控制基础标记颜色的属性

    示例代码:

    if (foldingMargin != null)
    {
        // 设置折叠状态标记为蓝色
        foldingMargin.CollapsedMarkerBrush = new SolidColorBrush(Colors.Blue);
        // 设置展开状态标记为绿色
        foldingMargin.ExpandedMarkerBrush = new SolidColorBrush(Colors.Green);
        // 若你的版本使用FoldingMarkerBrush,则替换为下面一行
        // foldingMargin.FoldingMarkerBrush = new SolidColorBrush(Colors.Red);
    }
    
  • 注意事项:

    • 确保已引用ICSharpCode.AvalonEdit.Folding命名空间
    • 若基于WPF开发,Brush需使用System.Windows.Media命名空间下的类型;如果需要复用资源,建议使用静态资源而非直接创建新实例

内容的提问来源于stack exchange,提问作者rkawano

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 19:08:12