BExplorer.Shell.TooltipDataTemplateSelector.SelectTemplate C# (CSharp) Method

SelectTemplate() public method

public SelectTemplate ( object item, DependencyObject container ) : System.Windows.DataTemplate
item object
container System.Windows.DependencyObject
return System.Windows.DataTemplate
		public override DataTemplate SelectTemplate(object item, DependencyObject container) {
			var obj = item as IListItemEx;
			try {
				var perceivedType = PerceivedType.Unknown;
				if (obj != null) {
				  obj = obj.Clone();
					var perceivedTypeProp = obj.GetPropertyValue(SystemProperties.PerceivedType, typeof(PerceivedType));
					if (perceivedTypeProp != null && perceivedTypeProp.VarType != VarEnum.VT_EMPTY && perceivedTypeProp.VarType != VarEnum.VT_ERROR) {
						perceivedType = (PerceivedType) obj.GetPropertyValue(SystemProperties.PerceivedType, typeof(PerceivedType)).Value;
					}
				}
				if (perceivedType ==
				    PerceivedType.Image && obj != null && !obj.IsFolder) {
					return ((FrameworkElement)container).FindResource("FSImageTooltip") as DataTemplate;
				} else if (obj != null && obj.IsFileSystem) {
					return ((FrameworkElement)container).FindResource("FSTooltip") as DataTemplate;
				} else {
					return ((FrameworkElement)container).FindResource("FSTooltip") as DataTemplate;
				}
			}
			catch {
				return ((FrameworkElement)container).FindResource("FSTooltip") as DataTemplate;
			}
		}
	}
TooltipDataTemplateSelector