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(); }
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); }
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); }
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); }
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); } } }