Транзакции и сделки

ExecutionGrid - универсальная таблица сообщений ExecutionMessage. Одним контролом показывает и тиковые сделки, и лог заявок, и собственные транзакции - вид данных задаёт ExecutionMessage.DataTypeEx.
Основные свойства
- ExecutionGrid.Messages - список сообщений.
- ExecutionGrid.SelectedMessage - выбранное сообщение.
- ExecutionGrid.SelectedMessages - выбранные сообщения.
- ExecutionGrid.MaxCount - максимальное число строк в таблице; при его превышении самые старые строки удаляются.
Так как одна и та же таблица обслуживает три вида данных, лишние колонки скрываются методом ExecutionGrid.HideColumns: для тиков не нужны колонки заявки, для лога заявок - колонки собственных сделок.
Ниже показаны фрагменты кода с его использованием:
<Window x:Class="Sample.ExecutionsWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:xaml="http://schemas.stocksharp.com/xaml"
Height="400" Width="900">
<xaml:ExecutionGrid x:Name="ExecutionGrid" />
</Window>
// Оставляем только колонки, относящиеся к транзакциям
ExecutionGrid.HideColumns(DataType.Transactions);
// Добавляем заявки в таблицу в потоке пользовательского интерфейса
_connector.OrderReceived += (subscription, order) =>
this.GuiAsync(() => ExecutionGrid.Messages.Add(order.ToMessage()));
// Ограничиваем размер таблицы
ExecutionGrid.MaxCount = 100000;