1
我有一个用Silverlight的Grid
实现的功能矩阵,用户需要选择一个产品。我怎样才能用整个选定列的矩形表示选择?如何在Silverlight网格的列周围显示“选择突出显示” - 矩形?
很容易在每个产品列的底部放一个CheckBox,但这太枯燥。我会优先停留使用SL Toolkit的DataGrid
(带内置行选择),但它不能为特征矩阵垂直定向...
感谢, 卡尔
我有一个用Silverlight的Grid
实现的功能矩阵,用户需要选择一个产品。我怎样才能用整个选定列的矩形表示选择?如何在Silverlight网格的列周围显示“选择突出显示” - 矩形?
很容易在每个产品列的底部放一个CheckBox,但这太枯燥。我会优先停留使用SL Toolkit的DataGrid
(带内置行选择),但它不能为特征矩阵垂直定向...
感谢, 卡尔
为了将矩形圆Silverlight Grid中整个列的内容只需将Rectangle作为最后一个子项放入Grid中,并将其上的属性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
可以这样设计,这是我一直倾向于使用的。
你会如何设计一个ListBox来做到这一点?矩阵单元格可以包含多行文本,并且我无法找到在没有网格的情况下对齐单元高度的方法。 – carlmon 2010-03-31 05:51:54
@carlmon:好的我很困难地看到你的问题;)创建这种控件的正确级别是从“选择器”派生出来,并创建你自己的自定义面板和面板项目控件来显示。虽然这将是一个更完整的解决方案,但它可能比你已经做的更难。 – AnthonyWJones 2010-03-31 13:13:22