Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <ComboBox.ItemTemplate>
- <DataTemplate>
- <StackPanel Orientation="Horizontal">
- <TextBlock Text="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ComboBoxItem}}, Converter={StaticResource RowNumberConverter}, UpdateSourceTrigger=PropertyChanged}" />
- <TextBlock Margin="1" Text="{Binding}" />
- </StackPanel>
- </DataTemplate>
- </ComboBox.ItemTemplate>
- </ComboBox>
- public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
- {
- MessageBox.Show("RowNumberConverter");
- if (value is ListViewItem)
- {
- var item = (ListViewItem)value;
- var listView = ItemsControl.ItemsControlFromItemContainer(item) as ListView;
- int index = listView.ItemContainerGenerator.IndexFromContainer(item);
- return index.ToString(CultureInfo.InvariantCulture);
- }
- if (value is ComboBoxItem)
- {
- var item = (ComboBoxItem)value;
- var comboBox = ItemsControl.ItemsControlFromItemContainer(item) as ComboBox;
- int index = comboBox.ItemContainerGenerator.IndexFromContainer(item);
- return index.ToString(CultureInfo.InvariantCulture);
- }
- return null;
- }
- <ComboBox Grid.Row="1"
- MinWidth="100"
- HorizontalAlignment="Center"
- VerticalAlignment="Center"
- AlternationCount="{Binding Path=Signals.Count,
- UpdateSourceTrigger=PropertyChanged}"
- ItemsSource="{Binding Path=Signals}"
- SelectedItem="{Binding Path=SelectedIndex,
- UpdateSourceTrigger=PropertyChanged}">
- <ComboBox.ItemTemplate>
- <DataTemplate>
- <StackPanel Orientation="Horizontal">
- <TextBlock Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplatedParent.(ItemsControl.AlternationIndex), UpdateSourceTrigger=PropertyChanged}" />
- <TextBlock Margin="1" Text="{Binding}" />
- </StackPanel>
- </DataTemplate>
- </ComboBox.ItemTemplate>
- </ComboBox>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement