遇到一点麻烦。我有一个DataGrid,它绑定到一个对象列表。其中一个对象属性是一个Icon(它是一个字符串)。当在DataGrid中显示对象时 - 我有一个ComboBox(假设持有一个静态的Icons列表)。我不知道如何绑定的东西是图标集合的itemssource。以下是我到目前为止的情况:
XAML
<DataGrid Name="dgMenus"
Grid.Column="1"
Grid.Row="1"
Visibility="Collapsed"
CanUserSortColumns="True"
Style="{StaticResource DataGrid}">
...
<DataGridTemplateColumn Header="Icon"
Width="Auto"
IsReadOnly="True">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ComboBox Name="cbIconSelector"
Style="{StaticResource ComboBoxFlatStyle}"
SelectionChanged="cbIconSelector_SelectionChanged"
ItemsSource="{Binding iconsLibrary}"
SelectedIndex="{Binding Icon, Converter={StaticResource FontAwesome_HTML_To_ComboBox_SelectedIndex}}"
BorderThickness="0"
Width="60"
Height="30"
VerticalAlignment="Center">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Style="{StaticResource FontAwesome}"
Text="{Binding XML}"
Margin="2"/>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
...
</DataGrid>
C#
dgMenus.ItemsSource = _viewmodel._menusForDisplay;
iconsLibrary = new FontAwesomeLibrary().icons;
非常感谢任何帮助。谢谢。
答案 0 :(得分:0)
使其工作的方法是将一个Loaded事件设置为ComboBox,并在那里设置所需的ItemsSource。