В случае, если это помогает кому-то другому, моя ошибка заключалась в том, что мой пользовательский класс представления вызывал AttributeSet.getAttributeValue , например
String fontName = attrs.getAttributeValue("http://schemas.android.com/apk/res-auto", "customFont");
..., что приводило к моему обычаю атрибут не читается для моего пользовательского представления.
Исправление заключалось в использовании obtainStyledAttributes
в моем пользовательском представлении:
TypedArray styleAttrs = context.obtainStyledAttributes(attrs, R.styleable.MyTextViewStyleable);
String fontName = styleAttrs.getString(R.styleable.MyTextViewStyleable_customFont);
Подсказка о том, что это работает правильно, заключается в том, что вы может нажать Ctrl / Apple + щелкнуть по R.styleable.MyTextViewStyleable_customFont
, чтобы получить прямое определение вашего attrs.xml.
Мне потребовалось некоторое время, чтобы определить эту критическую разницу между моим кодом и другими примерами, атрибут работал отлично, когда передавался непосредственно через макет XML (а не через стиль).
Если Вы не нуждаетесь в расширенном выборе в своем DataGrid (т.е. переключаетесь на выбор отдельной ячейки), можно установить:
<DataGrid SelectionMode="Single">
Это отключает также кнопку SelectAll в верхнем левом углу.