Ejemplo n.º 1
0
        static void Main(string[] args)
        {
            var capitals    = DataItemContainer.GetInstance();
            var capitalName = "London";

            Console.WriteLine($"The population for capital: {capitalName} - is: {capitals.GetPopulationByCapitalName(capitalName)}");

            var worldCapitals = DataItemContainer.GetInstance();

            capitalName = "Beijing";
            Console.WriteLine($"The population for capital: {capitalName} - is: {worldCapitals.GetPopulationByCapitalName(capitalName)}");
            Console.ReadLine();
        }
        private DotvvmControl GetDataContextTarget(DotvvmControl control, DotvvmProperty property)
        {
            var controlDataContextType  = control.GetDataContextType();
            var propertyDataContextType = property.GetDataContextType(control);

            if (!Equals(controlDataContextType, propertyDataContextType))
            {
                var tempContainer = new DataItemContainer {
                    Parent = control, DataContext = null
                };
                tempContainer.SetDataContextType(propertyDataContextType);
                return(tempContainer);
            }

            return(control);
        }
        protected override void RenderContents(IHtmlWriter writer, IDotvvmRequestContext context)
        {
            writer.AddAttribute("class", "draggable-list-item", true);
            writer.RenderBeginTag("div");

            var placeholder = new DataItemContainer()
            {
                DataContext = null
            };

            placeholder.SetValue(Internal.PathFragmentProperty, GetPathFragmentExpression() + "/[$index]");
            placeholder.SetValue(Internal.ClientIDFragmentProperty, GetValueRaw(Internal.CurrentIndexBindingProperty));
            ItemTemplate.BuildContent(context, placeholder);
            Children.Add(placeholder);
            placeholder.Render(writer, context);

            writer.RenderEndTag();
        }
Ejemplo n.º 4
0
		protected override void RenderContent(HtmlTextWriter writer)
		{
			if(_emptyTemplate == null && _itemTemplate == null)
				return;

			if(this.DataSource == null)
			{
				if(_emptyTemplate == null)
					return;

				_emptyTemplate.InstantiateIn(this);
			}
			else
			{
				if(_itemTemplate == null)
					return;

				var dataItems = this.DataSource as IEnumerable;

				if(dataItems == null || this.DataSource.GetType() == typeof(string))
					_itemTemplate.InstantiateIn(this);
				else
				{
					int index = 0;

					foreach(var dataItem in dataItems)
					{
						var container = new DataItemContainer<InputGroup>(this, dataItem, index++);
						_itemTemplate.InstantiateIn(container);
						this.Controls.Add(container);
					}
				}
			}

			base.RenderContent(writer);
		}
Ejemplo n.º 5
0
		private void RenderItemTemplate(HtmlTextWriter writer, string value, object dataItem, int index, bool isSelected)
		{
			DataItemContainer<ComboBox> container;

			if(this.RenderMode == ComboBoxRenderMode.Classic)
			{
				container = new DataItemContainer<ComboBox>(this, dataItem, index, "option");
				container.SetAttributeValue("value", value);

				if(isSelected)
					container.SetAttributeValue("selected", "selected");
			}
			else
			{
				container = new DataItemContainer<ComboBox>(this, dataItem, index, "dt", "item");
				container.SetAttributeValue("data-value", value);

				if(isSelected)
				{
					container.SetAttributeValue("data-selected", "selected");
					container.CssClass = "active selected item";
				}
			}

			_itemTemplate.InstantiateIn(container);
			container.RenderControl(writer);
		}
Ejemplo n.º 6
0
		protected virtual void RenderItem(HtmlTextWriter writer, DataItemContainer<ListView> item)
		{
			switch(this.RenderMode)
			{
				case ListRenderMode.List:
					item.TagName = "dt";
					break;
				case ListRenderMode.BulletList:
				case ListRenderMode.OrderedList:
					item.TagName = "li";
					break;
			}

			if(_itemTemplate != null)
				_itemTemplate.InstantiateIn(item);

			item.RenderControl(writer);
		}
Ejemplo n.º 7
0
		protected override void RenderContent(HtmlTextWriter writer)
		{
			if(Utility.IsEmptyCollection(this.DataSource))
			{
				if(_emptyTemplate != null)
				{
					using(var literal = new Literal())
					{
						_emptyTemplate.InstantiateIn(literal);
						literal.RenderControl(writer);
					}
				}

				return;
			}

			IEnumerable dataItems = this.DataSource as IEnumerable;

			if(dataItems == null || dataItems.GetType() == typeof(string))
			{
				var item = new DataItemContainer<ListView>(this, this.DataSource, 0);
				this.RenderItem(writer, item);
			}
			else
			{
				int index = 0;

				foreach(var dataItem in dataItems)
				{
					FormExtension.PushDataItem(this.Page, dataItem, index);

					var item = new DataItemContainer<ListView>(this, dataItem, index++);
					this.RenderItem(writer, item);

					FormExtension.PopDataItem(this.Page);
				}
			}
		}