31539Fermer31541
WarptenLe 12/06/2017 à 04:44
        /// <summary>
        /// Assigns a data source to the list view.
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="elements"></param>
        public void SetDataSource<T>(IEnumerable<T> elements) where T : CGObject_C
        {
            if (olvColumn1.Renderer == null)
                throw new InvalidOperationException("Bind a renderer before assigning objects!");

            if (olvColumn1.Renderer.GetType().IsGenericType)
            {
                var genericType = olvColumn1.Renderer.GetType().GetGenericArguments()[0];
                if (!(genericType.IsAssignableFrom(typeof(T))))
                    throw new InvalidOperationException("Type mismatch between the renderer and the provided collection!");
            }
            listView1.Objects = elements;
        }