0

我正在为 datagridview 实现自定义过滤器。自定义过滤器是一个用户控件,它有一个允许用户输入文本的文本框。

当用户选择特定列进行过滤时,我将过滤器用户控件添加到网格控件,然后将其显示在所选列的下方。

问题:当用户尝试在文本框中输入过滤器文本时,它只接受数值和字符,不允许点或某些字符,如!”。但是,如果用户单击删除键,从那时起文本框接受所有输入字符。

这可能与用户控件被添加到 Grid 的控件集合的事实有关,并且网格以不同的方式使用这些事件..?

任何帮助表示赞赏。

4

1 回答 1

0

不要将控件添加到网格的控件集合中,而是添加到表单或容器的集合中 - 然后,当您想在数据网格前面显示控件时,只需调用过滤器控件的 BringToFront(),完成过滤后只需调用 Hide( ) 或 SendToBack() 所以它再次变得不可见。

于 2012-06-21T14:28:55.973 回答