Как я могу бросить в ObservableCollection <объект>

Мы выполняем подобные стандарты, при сценариях мы требуем [] вокруг имен, и где соответствующие спецификаторы схемы - прежде всего, это страхует ставки против будущих захватов имени синтаксисом SQL.

SELECT [Name] FROM [dbo].[Customer] WHERE [Location] = 'WA'

Это сохранило наши души в прошлом - некоторые наши системы баз данных работали 10 + годы от SQL 6.0 до SQL 2005 - путь мимо их намеченной продолжительности жизни.

11
задан Marc Gravell 29 July 2009 в 08:32
поделиться

5 ответов

вы должны скопировать вот так

return new ObservableCollection<object>(myTabItemObservableCollection);
12
ответ дан 3 December 2019 в 03:36
поделиться

В принципе, вы не можете. Не сейчас и не в .NET 4.0 .

Каков здесь контекст? Что тебе нужно? LINQ имеет Cast , который может получить данные в виде последовательности , или есть некоторые уловки с общими методами (например, Foo (ObservalbleCollection col) и т. д.).

Или вы можете просто использовать не общий IList ?

IList untyped = myTypedCollection;
untyped.Add(someRandomObject); // hope it works...
12
ответ дан 3 December 2019 в 03:36
поделиться

вы можете использовать IEnumerable.Cast ()

4
ответ дан 3 December 2019 в 03:36
поделиться

Вы не можете. ObservableCollection не является производным от ObservableCollection .

Если вы объясните, почему вы хотели бы, возможно, мы можем указать альтернативный интерфейс, который вы можете использовать.

0
ответ дан 3 December 2019 в 03:36
поделиться

спасибо за все ответы, но я думаю, что решил эту проблему самостоятельно с помощью «вспомогательного метода».

Возможно, для этого есть лучший метод или оператор linq.

private void ConvertTabItemObservableCollection()
{
  Manager manager = this.container.Resolve<Manager>();
  foreach (var tabItem in manager.ObjectCollection)
  {
    TabItemObservableCollection.Add((TabItem)tabItem);
  }
}
0
ответ дан 3 December 2019 в 03:36
поделиться
Другие вопросы по тегам:

Похожие вопросы: