protected override DataTemplate SelectTemplateCore()

in Kiosk/Controls/TemplateSelectors.cs [63:124]


        protected override DataTemplate SelectTemplateCore(object item, DependencyObject container)
        {
            //validate
            if (item == null)
            {
                return DefaultTemplate;
            }

            //get string
            var str = item as string;
            if (item.GetType().IsPrimitive || item.GetType().IsEnum)
            {
                str = item.ToString();
            }

            //select template
            if (str == null)
            {
                return DefaultTemplate;
            }
            if (String1 != null && String1.Split(',').Contains(str))
            {
                return Template1;
            }
            if (String2 != null && String2.Split(',').Contains(str))
            {
                return Template2;
            }
            if (String3 != null && String3.Split(',').Contains(str))
            {
                return Template3;
            }
            if (String4 != null && String4.Split(',').Contains(str))
            {
                return Template4;
            }
            if (String5 != null && String5.Split(',').Contains(str))
            {
                return Template5;
            }
            if (String6 != null && String6.Split(',').Contains(str))
            {
                return Template6;
            }
            if (String7 != null && String7.Split(',').Contains(str))
            {
                return Template7;
            }
            if (String8 != null && String8.Split(',').Contains(str))
            {
                return Template8;
            }
            if (String9 != null && String9.Split(',').Contains(str))
            {
                return Template9;
            }
            if (String10 != null && String10.Split(',').Contains(str))
            {
                return Template10;
            }
            return DefaultTemplate;
        }