Вы можете использовать Concat() для добавления ваших реальных данных после статического элемента. Вам нужно сделать последовательность пустого элемента, который вы можете сделать с Enumerable.Repeat():
list.DataSource = Enumerable.Repeat(new Entity(), 1)
.Concat(GetEntitiesFromDB());
Или, определив простой метод расширения (в теории множеств синглтона представляет собой набор с 1 мощностью):
public IEnumerable<T> AsSingleton<T>(this T @this)
{
yield return @this;
}
// ...
list.DataSource = new Entity().AsSingleton().Concat(GetEntitiesFromDB());
Или еще лучше, написать метод PREPEND:
public IEnumerable<T> Prepend<T>(this IEnumerable<T> source, params T[] args)
{
return args.Concat(source);
}
// ...
list.DataSource = GetEntitiesFromDB().Prepend(new Entity());
Необходимо установить AppendDataBoundItems = "True". Проверьте @Rajapandiyan JJ answer –
Только в том случае, если вы вставляете элемент перед вашей привязкой к данным. Вы можете вставлять элементы после привязки данных без установки параметра AppendDataBoundItems в значение True. –
Нет. Это не работает. Однако вставка данных в 0-ю позицию в списке Listitemcollections после привязки данных заменит существующие данные на 0-й позиции. –