我在Winforms表单上有一个DataGridView
,并且像往常一样,空间有限。因此,列标题通常缩写(“数量”,“否”等)。我的屏幕阅读器(JAWS
)像桌子一样处理DataGridView
并在我浏览“单元格”(即网格中的控件)时读取列标题。理想情况下,我希望屏幕阅读器使用标题的可访问名称,因此它将显示“数量”而不是“排队茶为什么”。
我找不到列或列标题的AccessibleName
属性。有谁知道它潜伏在哪里,还是根本不可用?
答案 0 :(得分:0)
我对JAWS了解不多,但如果您的DGV列存在空间问题,为什么不设置列标题DefaultCellStyle
> WrapMode
属性为true,因此如果您在任何列标题文本中使用多个单词,则可以将其包装。因此,您可以使用有意义的列名而不是缩写。
答案 1 :(得分:0)
我不知道JAWS是如何工作的,如果你只需要一个名为AccessibleName
的属性,你可以创建一个继承自DataGridViewTextBoxColumn
的新的DataGridView Column类
public class AccessibleDataGridViewTextBoxColumn : DataGridViewTextBoxColumn
{
public string AccessibleName { get; set; }
}
并将其添加到DataGridView
。然后,您可以在设计器或代码中使用所需文本设置属性。