Вы могли установить фокус где-то в другом месте непосредственно перед сохранением?
можно сделать это путем вызова фокуса () на элементе UI.
Вы могли сфокусироваться на любом элементе, вызывает "сохранение". Если Вашим триггером является LostFocus тогда, необходимо переместить фокус куда-нибудь. Сохраните имеет преимущество, что оно не изменяется и имело бы смысл пользователю.
Вы можете вызвать Array.Clear :
int[] x = new int[10];
for (int i = 0; i < 10; i++)
{
x[i] = 5;
}
Array.Clear(x, 0, x.Length);
В качестве альтернативы, в зависимости от ситуации, вы можете найти более понятным вместо этого просто создать новый массив. В частности, тогда вам не нужно беспокоиться о том, есть ли в каком-либо другом коде ссылка на массив и ожидает ли там старые значения.
Я не могу припомнить, чтобы когда-либо вызывал Array.Clear
] в моем собственном коде - это просто не то, что мне нужно.
(Конечно, если вы все равно собираетесь заменить все значения, вы можете сделать это без предварительной очистки массива.)