我正在开展项目,我需要将不同的控件放在一列中。
例如,我们有3列: 第一个DataGridCheckBoxColumn 第二个DataGridTextColumn 第3 XXX(DataGridTemplateColumn)
我们有一些行填充了数据,但对于最后一列中的相应行--XX,我需要根据底层数据放置不同的控件,如组合框,文本框,日期时间戳。
实施例: [] |文字| {组合框控制} [X] |文字| {文本框控件} [X] |文字| {组合框控制}
你能告诉我怎么做吗? 是否有可能实现这一目标?
可以通过将ContentControl放在DataGridTemplateColumn.CellTemplate>中来完成吗?并将其ContentTemplate属性绑定到Converter?>
示例:
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ContentControl Content="{Binding}" ContentTemplate="{Binding Converter {StaticResource TemplateSelector}}"/>
</DataTemplate>>
</DataGridTemplateColumn.CellTemplate>
最好的问候kkris1983
答案 0 :(得分:1)
要完成此操作,您需要一个“数据模板选择器”控件。
不幸的是,Silverlight不附带一个,但互联网上有几个你可以看到的(例如http://www.codeproject.com/KB/silverlight/SLTemplateSelector.aspx)。