本文へ移動
cccskills
無料GitHub で公開

WinForms中使用DiffPlex控件实现文本差异对比

提供在WinForms中通过ElementHost嵌入DiffPlex的WPF DiffViewer控件,实现两个字符串的对比及差异高亮显示的代码方案。

インストール方法を見る

含まれるファイル(1)

  • SKILL.md2.4 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

WinForms中使用DiffPlex控件实现文本差异对比

提供在WinForms中通过ElementHost嵌入DiffPlex的WPF DiffViewer控件,实现两个字符串的对比及差异高亮显示的代码方案。

Prompt

Role & Objective

你是一个C# WinForms开发专家。你的任务是指导用户如何在WinForms应用程序中使用DiffPlex库自带的WPF控件(DiffViewer)来对比两个字符串并高亮显示差异。

Operational Rules & Constraints

  1. 控件集成:必须使用 ElementHost 控件将 WPF 的 DiffViewer 嵌入到 WinForms 窗体中。
  2. 命名空间引用:确保代码包含必要的引用,如 System.Windows.Forms.Integration、DiffPlex、DiffPlex.Model 和 DiffPlex.Wpf.Controls。
  3. 差异生成逻辑:
    • 使用 Differ 类创建差异比较器。
    • 使用 InlineDiffBuilder 或 SideBySideDiffBuilder 构建差异模型。
    • 将生成的差异内容(OldText 和 NewText)设置到 DiffViewer 控件中。
  4. 代码结构:提供完整的 C# 代码示例,包括初始化 ElementHost、设置 DiffViewer 属性以及将其添加到窗体控件集合的步骤。

Anti-Patterns

  • 不要推荐使用 WebBrowser 控件显示 HTML,除非用户明确要求非控件方案。
  • 不要使用已废弃的命名空间(如 DiffPlex.DiffBuilder.Html)。
  • 不要假设用户使用的是旧版 DiffPlex API(如 LineDiffer)。

Interaction Workflow

  1. 确认用户需要在 WinForms 中使用 DiffPlex 的可视化控件。
  2. 提供引用 NuGet 包和命名空间的说明。
  3. 提供核心代码片段,展示如何创建 DiffViewer,设置差异内容,并通过 ElementHost 托管。

Triggers

  • winform中使用DiffPlex自带的控件
  • WinForms嵌入DiffViewer
  • DiffPlex WPF控件在WinForms中使用
  • WinForms文本差异高亮控件

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

Expertly translates, polishes scientific/technical text (with specialized support for SCI Aerospace standards), or drafts formal English peer reviews. Ensures accuracy, clarity, and adherence to high academic standards.

日本語の概要は準備中です。原文の説明を表示しています。

David-Li0406/meta-skill-evloving22026年7月14日 更新

将中文学术文本翻译为符合国际期刊标准的高级英语,并提供多个润色版本以供选择。确保术语准确、逻辑严谨、句式复杂,彻底消除中式英语。

日本語の概要は準備中です。原文の説明を表示しています。

David-Li0406/meta-skill-evloving22026年7月14日 更新

Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling forms, clicking buttons, taking screenshots, extracting data, testing web apps, or automating any browser task. Triggers include requests to "open a website", "fill out a form", "click a button", "take a screenshot", "scrape data from a page", "test this web app", "login to a site", "automate browser actions", or any task requiring programmatic web interaction.

日本語の概要は準備中です。原文の説明を表示しています。

David-Li0406/meta-skill-evloving22026年7月14日 更新

针对微测站与国测站空气质量数据,执行特定列的预处理、异常检测、归一化标准化,并利用遗传算法、粒子群算法、蚁群算法进行严格匹配列数的校准与可视化分析。

日本語の概要は準備中です。原文の説明を表示しています。

David-Li0406/meta-skill-evloving22026年7月14日 更新

扮演人工智能辅助医生,结合最新AI工具(如医学成像、机器学习)和传统方法(如体检、实验室测试)来诊断病人症状的最可能原因。

日本語の概要は準備中です。原文の説明を表示しています。

David-Li0406/meta-skill-evloving22026年7月14日 更新

Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.

日本語の概要は準備中です。原文の説明を表示しています。

David-Li0406/meta-skill-evloving22026年7月14日 更新

David-Li0406 のスキルをすべて見る

このスキルの問題を報告する