任务很简单--使用老的好的ADO.NET工具用DB表的内容填充WPF Datagrid控件。DataGrid的AutoGenerateColumns属性设置为True,因此我不在XAML中指定Columns集合。一切正常,但有一个小问题- DataGRid列标题错误地显示了表列的名称。例如,所有列都使用类似“Prefix_Word1_Word2_Word3”的约定命名。相反,DataGrid中的列名忽略了第一个下划线符号,所以我可以看到类似“PrefixWord1_Word2_Word3”的smth。对于多个DB中具有相同命名约定的多个表,将出现此行为。
你觉得谁该为此负责?
添加
x1c 0d1x的数据
在这种情况下,TPA是前缀。而不是TPAID,我应该看到TPA_ID等等。
1条答案
按热度按时间piah890a1#
WPF使用下划线字符而不是&字符(如WinForms)作为访问的前缀(也称为快捷键或助记符)键入其元素(如Label和Button)的文本。
可以使用两个下划线对下划线进行转义。
下划线取代了&号,因为在XAML中,&号很容易导致错误并导致问题。
*方案一
只需编写一个类似这样的事件处理程序,以临时转义datagrid标头中的下划线。
字符串
您可以在下一个链接中找到此问题的更多帮助:How to: Customize Auto-Generated Columns in the DataGrid Control