所以我想制作一个可见的表格,每个单元格周围都有一个边框,标题的背景颜色不同。我想最终将控件插入其中。例如,在其中一个表格元素或一些单选按钮内放置一个文本字段,等等。是否有针对此的控件?
我已将其缩小为两种可能性,但它们看起来都有些“无聊”:
使用网格控件 - 我喜欢这个但是有没有办法给单元格上的边框着色(我没有找到这个)
使用 DataGrid 控件 - 这个控件对于我的需要来说太复杂了。
我只是在寻找 silverlight 中的 html 样式表,有什么想法吗?
最佳答案
我使用工具包中的 HeaderedItemsControl 获得了相当不错的结果:
<c:HeaderedItemsControl ItemsSource="{Binding rowData}" x:Name="theTable">
<c:HeaderedItemsControl.Header>
<Border Background="HEADER BG COLOR HERE">
<Grid Width="{Binding ActualWidth, ElementName=theTable}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Text="Field 1"/>
<TextBlock Grid.Column="1" Text="Field 2"/>
<TextBlock Grid.Column="2" Text="Field 3"/>
</Grid>
</Border>
</c:HeaderedItemsControl.Header>
<c:HeaderedItemsControl.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Text="{Binding Value1}"/>
<TextBlock Grid.Column="1" Text="{Binding Value2}"/>
<TextBlock Grid.Column="2" Text="{Binding Value3}"/>
</Grid>
</DataTemplate>
</c:HeaderedItemsControl.ItemTemplate>
</c:HeaderedItemsControl>
当然,你可以根据自己的喜好设计上面的样式......
关于c# - 如何在 Silverlight 中制作表格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2671047/