Silverlight:每个数据行的RowDetailsTemplate的单独可见性

时间:2010-08-16 15:09:38

标签: silverlight datagrid silverlight-4.0

我正在尝试显示Silverlight DataGrid的RowDetailsTemplate,具体取决于绑定到bool控件的CheckBox属性的IsChecked属性。在我的RowDetailsTemplate中,有一个自定义UserControl,包含更多控件。

由于DataGrid仅允许全局设置(RowDetailsVisibilityMode),因此需要一些代码隐藏。我已经实施了一个基于 Rorys Reply (并使用行为技术)的解决方案,该解决方案实际上有效。

不幸的是,DataGrid不记得排序时单独显示或隐藏的行。复选框保持选中状态,但Row会折叠。此外,似乎不存在像“OnAfterSort”或类似的事件,我可以在循环中“刷新”可见性设置。

另一个想法是将我的自定义详细信息的可见性 - UserControl绑定到CheckBox绑定值。这实际上有效(当将RowDetailsVisibilityMode设置为“Visible”时),但我无法摆脱这种奇怪的行为:当选中CheckBox时,详细模板会展开并显示详细的UserControl。尼斯。再次取消选中CheckBox时,UserControl将消失(可见性设置为Collapsed)但行不会折叠且空白仍然存在(因为它将设置为Hidden而不是{{1} })。

你有什么想法吗?

我希望我没有发布任何代码示例,实现非常简单,我相信问题实际上并不在于我所犯的编码错误。您可以像 this perfect MSDN Example 一样快速设置简单的DataGrid。从这里开始,很容易测试两种描述的行为!

非常感谢提前,
- 托马斯

0 个答案:

没有答案