おそらく、Web 用のCodeMirrorアイテムを検討してください。明らかに、これはあなたが求めたように WPF では機能しませんが、Web フォーム、ASP.NET MVC、プレーン HTML、PHP など、あらゆる Web フレームワークで機能します。
CodeMirror は、コードのようなコンテンツ (コンピューター プログラム、HTML マークアップなど) 用の比較的快適なエディター インターフェイスを作成するために使用できる JavaScript ライブラリです。編集している言語用にパーサーが作成されている場合 (サポートされている言語のリストについては、以下を参照してください)、コードに色が付けられ、エディターがインデントを支援します。
のパーサー:
- JavaScript
- XML/HTML
- CSS
- HTML 混合モード
- スパークル
- HTML+PHP 混合モード
- パイソン
- ルア
- ルビー
- SQL
- PLSQL
- 差分
- グルーヴィー
- C#
- 図式
- ジャワ
- XQuery
- OmetaJS
- フリーマーカー
実装:
<textarea rows="30" cols="120" id="someCode" >
//some comments
var foo = "bar";
</textarea>
2 つの .js 参照を含めると、この JavaScript のビットが textarea 要素を新しい構文で強調表示された要素に置き換えます。
<script type="text/javascript">
var textarea = document.getElementById('someCode');
var editor = new MirrorFrame(CodeMirror.replace(textarea), {
height: "350px",
content: textarea.value,
parserfile: ["tokenizejavascript.js", "parsejavascript.js"],
stylesheet: "css/jscolors.css",
path: "js/",
autoMatchParens: true
});
</script>
CodeMirror のマニュアルが役に立ちます。
JavaScript ベースのソース コード エディターの比較の WikiPedia エントリも検討してください。