我遇到了这样的问题:需要选择一种机制,允许用户隐藏/显示DataGrid中的列。
建议的方法之一是添加一个按钮(看起来像列标题,但没有列)。当用户点击它时,列列表会出现,用户可以选择要隐藏/显示的列。但有没有办法在网格中有这样的列(只是一个没有列的标题作为示例 - 你可能会看到Mozilla Thunderbird中的网格)?
另一种不太可能的方式是弹出列表,当鼠标悬停在DataGrid上时出现。但这个清单很少使用。因此,这个闪存列表对最终用户来说只是一件令人头疼的问题。
鼠标单击的方法。我只是害怕,他们会被忽视,用户在使用数十列的网格时会遇到困难。
有什么想法吗?有没有办法实现第一种方式,或者可能有更好的方法来解决这个问题?
如果我只提供这个神奇的“没有列的标题”的图片,可能会更好,以避免混淆。
网格中有一个可点击的列标题,但它下面没有列。
dataGrid中的滚动条正上方有一些区域,它可能是放置此功能的正确位置。但似乎我无法使用它。
答案 0 :(得分:0)
也许组合方法 - 标题中的一些(小)x形按钮隐藏列,弹出列表(以某种方式调用)来恢复它。没有专栏的标题......这很奇怪,如果有很多,那就更奇怪了。
编辑:您需要自定义标题项呈示器。如果它呈现最后一个标题(应该能够通过'owner'属性和列信息确定),它会显示列选择按钮。否则,它会显示隐藏列的按钮。