Чтобы поместить прямоугольник вокруг содержимого целого столбца в сетке Silverlight, просто поместите прямоугольник в качестве последнего дочернего элемента в сетке и назначьте для него свойство Grid.RowSpan
числу строк в сетке. и Grid.Column
на столбец, который вы хотите выделить. E.g.:-
<Grid x:Name="LayoutRoot">
<Grid.RowDefinitions>
<!-- Row Definitions (say 4 in this case)-->
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<!-- Column definitions -->
</Grid.ColumnDefinitions>
<!-- Grid contents -->
<Rectangle Grid.RowSpan="4" Grid.Column="1" Stroke="Blue" StrokeThickness="1" />
</Grid>
Сказав, что управление Grid
может показаться тяжелой работой для отображения чего-либо, основанного на матрице продукта. Вы утверждаете, что DataGrid
будет работать для вас, если он может визуализировать «строки» по горизонтали. Что ж, ListBox
можно стилизовать таким образом, поэтому я склонен его использовать.