Насколько мне известно, это невозможно
Причина в том, что при рендеринге ListBox он рендерит так (если вы ссылаетесь на тот же код, который был у вас в ваш другой вопрос *).1004 *):
<Canvas>
<ListBoxItem>
<ContentPresenter>
<Grid>
<TextBlock />
<Line />
</Grid>
</ContentPresenter>
</ListBoxItem>
<ListBoxItem>
<ContentPresenter>
<Grid>
<TextBlock />
<Line />
</Grid>
</ContentPresenter>
</ListBoxItem>
<ListBoxItem>
<ContentPresenter>
<Grid>
<TextBlock />
<Line />
</Grid>
</ContentPresenter>
</ListBoxItem>
...
</Canvas>
Как видите, каждый ListBoxItem отображается как группа вложенных элементов управления.Вы не можете нарисовать все свои текстовые блоки поверх всех ваших строк, потому что они не все имеют одного и того же родителя, а ZIndex используется для упорядочивания элементов, находящихся в одном родительском контейнере.
Обходной путь - использоватьдва отдельных ItemControls нарисованы друг над другом.Таким образом, все ваши линии будут отображаться в элементе управления Bottom ItemsControl, а все текстовые блоки будут отображаться в элементе управления Top ItemsControl.
<Grid>
<ItemsControl ItemsSource="{Binding MyData}"
ItemTemplate="{DynamicResource MyLineTemplate}" />
<ItemsControl ItemsSource="{Binding MyData}"
ItemTemplate="{DynamicResource MyTextBlockTemplate}" />
</Grid>