Как я могу показать прямоугольник «выделения выделения» вокруг столбца сетки Silverlight? - PullRequest
1 голос
/ 30 марта 2010

У меня есть функциональная матрица, реализованная с помощью Silverlight Grid, где пользователям необходимо выбрать продукт. Как я могу указать выделение прямоугольником вокруг всего выбранного столбца?

Легко поставить CheckBox внизу колонки каждого продукта, но это слишком скучно. Я бы предпочел использовать SL Toolkit DataGrid (со встроенным выбором строк), но он не может быть ориентирован вертикально для матрицы объектов ...

Спасибо, Карл

1 Ответ

1 голос
/ 31 марта 2010

Чтобы поместить прямоугольник вокруг содержимого целого столбца в сетке 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 можно стилизовать таким образом, поэтому я склонен его использовать.

...