Это раздражает, это не так просто решить с помощью конвертера.Фактически, если бы вы могли связываться с ConverterParameter (что невозможно в Silverlight v4), вы могли бы довольно легко достичь желаемого.
Если вы не хотите прикасаться к своей модели, я думаю, что вам лучше всего было бы создать новый класс, производный от ControlControl, который устанавливает собственную видимость на основе позиции границы в источнике элементов.Это не самое лучшее решение в мире, но оно поддерживает модель в чистоте.Это будет выглядеть в ItemsControl
<local:ItemsControlVisibilityHelper ShowIfLast="False" ShowIfFirst="True" ShowIfNotLastOrFirst="True"
ItemsControl="{Binding ElementName=x_ItemsControl}"
BoundItem="{Binding}"
>
<TextBlock Text=", "></TextBlock>
</local:ItemsControlVisibilityHelper>