1
// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt)
2
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
7
using System.Collections.Generic;
10
using System.Windows.Controls;
12
using ICSharpCode.Data.Core.Interfaces;
13
using ICSharpCode.Data.Core.DatabaseObjects;
17
namespace ICSharpCode.Data.Core.UI.UserControls
19
public class DatabaseTreeViewDataTemplateSelector : DataTemplateSelector
21
public override DataTemplate SelectTemplate(object item, DependencyObject container)
23
FrameworkElement element = container as FrameworkElement;
28
if (item is DatabaseObjectBase)
32
if (item is IDatabase)
33
return element.FindResource("DatabaseDataTemplate") as DataTemplate;
34
else if (item is ITable || item is IView)
35
return element.FindResource("TableDataTemplate") as DataTemplate;
36
else if (item is IColumn)
37
return element.FindResource("ColumnDataTemplate") as DataTemplate;
38
else if (item is IProcedure)
39
return element.FindResource("ProcedureDataTemplate") as DataTemplate;
40
else if (item is IProcedureParameter)
41
return element.FindResource("ProcedureParameterDataTemplate") as DataTemplate;
45
return element.FindResource("StandardDataTemplate") as DataTemplate;