Редактор кода

CodePanel - редактор исходного кода с подсветкой синтаксиса, нумерацией строк, автодополнением и панелью инструментов компиляции. Используется везде, где код правится прямо в приложении - в стратегиях, индикаторах и скриптах.
Основные свойства
- CodePanel.Code - редактируемый код и его состояние компиляции.
- CodePanel.ReadOnly - запрет на изменение текста.
- CodePanel.ShowToolBar - показ панели инструментов.
- CodePanel.AutoCompile - автоматическая компиляция после правки.
Ошибки компиляции редактор не показывает сам - их удобно выводить рядом в таблице ErrorsGrid и по двойному щелчку переходить к строке.
Ниже показаны фрагменты кода с его использованием:
<Window x:Class="Sample.CodeWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:code="clr-namespace:StockSharp.Xaml.CodeEditor;assembly=StockSharp.Xaml.CodeEditor"
Height="600" Width="900">
<code:CodePanel x:Name="CodePanel" ShowToolBar="True" />
</Window>
// Загружаем исходный текст в редактор
CodePanel.Code = new CodeInfo
{
Text = File.ReadAllText("MyStrategy.cs"),
};
// После компиляции выводим ошибки в отдельную таблицу
CodePanel.CompiledCode += () => ErrorsGrid.Errors.AddRange(CodePanel.Code.Errors);
// Просмотр без правки
CodePanel.ReadOnly = true;