nHydrate.Generator.Models.TableCollectionController.ReloadControl C# (CSharp) Method

ReloadControl() private method

private ReloadControl ( ) : void
return void
		private void ReloadControl()
		{
			if (ControllerListView != null)
				ControllerListView.BeginUpdate();

			try
			{
				//Load the list
				ControllerListView.Items.Clear();
				var list = (TableCollection)this.Object;
				foreach (var table in list.OrderBy(x => x.Name))
				{
					var newItem = new ListViewItem(table.Name);
					newItem.Tag = table;
					newItem.Name = table.Key;

					if (!table.Generated)
						newItem.ImageIndex = ImageHelper.GetImageIndex(TreeIconConstants.TableNonGen);
					else if (table.AssociativeTable)
						newItem.ImageIndex = ImageHelper.GetImageIndex(TreeIconConstants.TableAssociative);
					else if (table.IsTypeTable)
						newItem.ImageIndex = ImageHelper.GetImageIndex(TreeIconConstants.TableType);
					else if (table.ParentTable != null)
						newItem.ImageIndex = ImageHelper.GetImageIndex(TreeIconConstants.TableDerived);
					else
						newItem.ImageIndex = ImageHelper.GetImageIndex(TreeIconConstants.Table);

					newItem.SubItems.Add(table.CodeFacade);
					newItem.SubItems.Add(table.Columns.Count.ToString());
					newItem.SubItems.Add(string.IsNullOrEmpty(table.DBSchema) ? "dbo" : table.DBSchema);
					ControllerListView.Items.Add(newItem);
				}
			}
			catch (Exception ex)
			{
				throw;
			}
			finally
			{
				if (this.ControllerListView != null) 
					this.ControllerListView.EndUpdate();
			}
		}