选择器
SecurityPicker 组件用于查找和选择工具。它支持单选和多选。该组件允许您按工具类型过滤工具列表。此组件还可以用于显示财务信息(一级字段),如表格部分所示。

SecurityPicker 由以下部分组成:
- 一个文本字段,用于输入交易品种的代码(或编号)。输入后,列表将根据输入的子字符串进行过滤。
- 用于按类型筛选工具的特殊 SecurityTypeComboBox 下拉框。
- 显示工具列表的 SecurityGrid 表。
主要属性
- SecurityPicker.SelectionMode - 交易品种选择模式:单个,多个。
- SecurityPicker.ShowCommonStatColumns - 显示主要列。
- SecurityPicker.ShowCommonOptionColumns - 显示选项的主要列。
- SecurityPicker.Title - 显示在组件顶部的标题。
- SecurityPicker.Securities - 交易品种列表。
- SecurityPicker.SelectedSecurity - 所选交易品种。
- SecurityPicker.SelectedSecurities - 所选交易品种列表。
- SecurityPicker.FilteredSecurities - 筛选过的交易品种列表。
- SecurityPicker.ExcludeSecurities - 隐藏交易品种的列表。
- SecurityPicker.SelectedType - 所选的工具类型。
- SecurityPicker.SecurityProvider - 关于交易品种信息的提供者。
- SecurityPicker.MarketDataProvider - 市场数据提供商。
下面是代码片段及其用法,摘自示例 Samples/InteractiveBrokers/SampleIB。
<Window x:Class="Sample.SecuritiesWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:loc="clr-namespace:StockSharp.Localization;assembly=StockSharp.Localization"
xmlns:xaml="http://schemas.stocksharp.com/xaml"
Title="{x:Static loc:LocalizedStrings.Securities}" Height="415" Width="1081">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<xaml:SecurityPicker x:Name="SecurityPicker" x:FieldModifier="public" SecuritySelected="SecurityPicker_OnSecuritySelected" ShowCommonStatColumns="True" />
</Grid>
</Window>
private void ConnectClick(object sender, RoutedEventArgs e)
{
......................................
_connector.SecurityReceived += (sub, security) => _securitiesWindow.SecurityPicker.Securities.Add(security);
_securitiesWindow.SecurityPicker.MarketDataProvider = _connector;
......................................
}
private void SecurityPicker_OnSecuritySelected(Security security)
{
NewStopOrder.IsEnabled = NewOrder.IsEnabled =
Level1.IsEnabled = Depth.IsEnabled = security != null;
}