У меня проблемы с DataGrid. Когда для DataGrid установлено значение CanUserAddRows, новая черная строка помещается в нижнюю часть DataGrid, но эта строка ведет себя неожиданно, потому что если я просто щелкну новую строку и передам фокус другой ячейке, строка будет создана, даже если она пуста. Я хотел бы изменить поведение, выполнив проверку, если строка пуста, избегая создания нового элемента, но если в событии RowEditEnding я устанавливаю e.Cancel=true, то NewItemPlaceHolder исчезает, и с тех пор я не могу добавить ни одной строки. Кто-нибудь нашел ответ на эту проблему?
protected override void OnRowEditEnding(DataGridRowEditEndingEventArgs e)
{
if ((e.Row.Item as DataRowView).Row.ItemArray[0] == null || (e.Row.Item as DataRowView).Row.ItemArray[0].ToString() == String.Empty)
{
e.Cancel = true;
IEditableCollectionView collection = Items as IEditableCollectionView;
if (collection.IsAddingNew)
{
collection.CancelNew();
}
}
base.OnRowEditEnding(e);
}
Подробнее здесь: https://stackoverflow.com/questions/112 ... r-behavior