private void RenderListItem(XhtmlMobileTextWriter writer, MobileListItem item) { String accessKey = GetCustomAttributeValue(item, XhtmlConstants.AccessKeyCustomAttribute); String cssClass = GetCustomAttributeValue(item, XhtmlConstants.CssClassCustomAttribute); if (Control.ItemsAsLinks) { RenderBeginLink(writer, item.Value, accessKey, Style, cssClass); writer.WriteEncodedText(item.Text); RenderEndLink(writer); } else if (Control.HasItemCommandHandler) { RenderPostBackEventAsAnchor(writer, item.Index.ToString(CultureInfo.InvariantCulture) /*event argument*/, item.Text /*link text*/, accessKey, Style, cssClass); } else { writer.WriteEncodedText(item.Text); } }
public Task <BaseResponse> Put(int id, [FromBody] MobileViewModel model) { MobileListItem updateModel = new MobileListItem { Brand = model.Brand, CPU = model.CPU, InternalMemory = model.InternalMemory, Name = model.Name, OS = model.OS, Price = model.Price, RAM = model.RAM, ScreenResolution = model.ScreenResolution, ScreenSize = model.ScreenSize, Size = model.Size, VideoUrl = model.VideoUrl, Weight = model.Weight }; foreach (var item in model.Photos) { Domain.DTO.ServiceModels.Photo photo = new Domain.DTO.ServiceModels.Photo { Base64 = item.Base64, PhotoId = item.PhotoId }; updateModel.Photos.Add(photo); } return(_mobileService.UpdateMobile(updateModel)); }
/// <summary> /// </summary> internal ItemTreeNode(MobileListItem runtimeItem) : base(runtimeItem.Text) { Debug.Assert(runtimeItem != null, "runtimeItem is null"); _valueSet = true; this._runtimeItem = runtimeItem; this._value = _runtimeItem.Value; this._selected = _runtimeItem.Selected; }
private void RenderListBody(XhtmlMobileTextWriter writer, String itemPrefix, String itemSuffix) { int pageStart = Control.FirstVisibleItemIndex; int pageSize = Control.VisibleItemCount; for (int i = 0; i < pageSize; i++) { MobileListItem item = Control.Items[pageStart + i]; writer.Write(itemPrefix); RenderListItem(writer, item); writer.WriteLine(itemSuffix); } }
/// <include file='doc\WmlListAdapter.uex' path='docs/doc[@for="WmlListAdapter.Render"]/*' /> public override void Render(WmlMobileTextWriter writer) { if (Control.HasControls()) { writer.BeginCustomMarkup(); RenderChildren(writer); writer.EndCustomMarkup(); return; } int pageStart = Control.FirstVisibleItemIndex; int pageSize = Control.VisibleItemCount; if (pageSize == 0) { return; } MobileListItemCollection items = Control.Items; if (items.Count == 0) { return; } bool itemsAsLinks = Control.ItemsAsLinks; bool hasCmdHandler = Control.HasItemCommandHandler; writer.EnterStyle(Style); for (int i = 0; i < pageSize; i++) { MobileListItem item = items[pageStart + i]; if (itemsAsLinks) { RenderLink(writer, item.Value, null, false, false, item.Text, true); } else if (hasCmdHandler) { RenderPostBackEvent(writer, item.Index.ToString(CultureInfo.InvariantCulture), null, true, item.Text, true); } else { writer.RenderText(item.Text, true); } } writer.ExitStyle(Style); }
void RenderSelectElement(XhtmlMobileTextWriter writer) { if ((String)Device["supportsSelectFollowingTable"] == "false" && writer.CachedEndTag == "table") { writer.Write(" "); } ConditionalEnterStyle(writer, Style); writer.WriteBeginTag("select"); if (Control.SelectType == ListSelectType.MultiSelectListBox) { writer.WriteAttribute("multiple", "multiple"); } if (Control.SelectType == ListSelectType.ListBox || Control.SelectType == ListSelectType.MultiSelectListBox) { writer.WriteAttribute("size", Control.Rows.ToString(CultureInfo.InvariantCulture)); } writer.WriteAttribute("name", Control.UniqueID); ConditionalRenderClassAttribute(writer); writer.Write(">"); for (int itemIndex = 0; itemIndex < Control.Items.Count; itemIndex++) { MobileListItem item = Control.Items[itemIndex]; writer.WriteBeginTag("option"); WriteItemValueAttribute(writer, itemIndex, item.Value); if (item.Selected && (Control.IsMultiSelect || itemIndex == Control.SelectedIndex)) { writer.Write(" selected=\"selected\">"); } else { writer.Write(">"); } writer.WriteEncodedText(item.Text); writer.WriteLine("</option>"); } ConditionalSetPendingBreak(writer); writer.WriteEndTag("select"); writer.WriteLine(); ConditionalPopPhysicalCssClass(writer); ConditionalExitStyle(writer, Style); }
public async Task <BaseResponse> GetMobile(int id) { BaseResponse <MobileListItem> response = null; try { var item = await(_mobilieRepository as MobileRepository).FindBy(m => m.Id == id) .Include(m => m.Photos).SingleOrDefaultAsync(); var responseItem = new MobileListItem { Brand = item.Brand, CPU = item.CPU, InternalMemory = item.InternalMemory, MobileId = item.Id, Name = item.Name, OS = item.OS, Price = item.Price, RAM = item.RAM, ScreenResolution = item.ScreenResolution, ScreenSize = item.ScreenSize, Size = item.Size, VideoUrl = item.VideoUrl, Weight = item.Weight, Photos = (item.Photos as List <Domain.DAO.Entities.Photo>).Select(x => new Domain.DTO.ServiceModels.Photo() { Base64 = x.Value, PhotoId = x.Id }).ToList() }; response = BaseResponse.Ok(responseItem); } catch (Exception e) { _logger.LogError(e.Message); response = BaseResponse.Fail <MobileListItem>(new Error() { Code = ErrorCode.Internal, ErrorMessage = "Could not find product" }); } return(response); }
public void Add(MobileListItem item) {}
public ListCommandEventArgs(MobileListItem item, object commandSource) { }
// Constructors public ListCommandEventArgs(MobileListItem item, object commandSource, System.Web.UI.WebControls.CommandEventArgs originalArgs) { }
/// <include file='doc\HtmlSelectionListAdapter.uex' path='docs/doc[@for="HtmlSelectionListAdapter.Render"]/*' /> public override void Render(HtmlMobileTextWriter writer) { MobileListItemCollection items = Control.Items; ListSelectType selectType = Control.SelectType; if (items.Count == 0 && selectType != ListSelectType.ListBox && selectType != ListSelectType.MultiSelectListBox) { return; } int selectedIndex = Control.SelectedIndex; String renderName; if (Device.RequiresAttributeColonSubstitution) { renderName = Control.UniqueID.Replace(':', ','); } else { renderName = Control.UniqueID; } switch (selectType) { case ListSelectType.DropDown: case ListSelectType.ListBox: case ListSelectType.MultiSelectListBox: if (items.Count == 0 && !Device.CanRenderEmptySelects) { break; } writer.EnterLayout(Style); writer.WriteBeginTag("select"); if (selectType == ListSelectType.MultiSelectListBox) { writer.Write(" multiple"); } if (selectType == ListSelectType.ListBox || selectType == ListSelectType.MultiSelectListBox) { writer.WriteAttribute("size", Control.Rows.ToString(CultureInfo.InvariantCulture)); } writer.WriteAttribute("name", renderName); writer.Write(">"); for (int itemIndex = 0; itemIndex < items.Count; itemIndex++) { MobileListItem item = items[itemIndex]; writer.WriteBeginTag("option"); WriteItemValueAttribute(writer, itemIndex, item.Value); if (item.Selected && (Control.IsMultiSelect || itemIndex == selectedIndex)) { writer.Write(" selected>"); } else { writer.Write(">"); } writer.WriteEncodedText(item.Text); writer.WriteLine(""); } writer.Write("</select>"); if (Device.HidesRightAlignedMultiselectScrollbars && selectType == ListSelectType.MultiSelectListBox) { // nested if for perf if ((Alignment)Style[Style.AlignmentKey, true] == Alignment.Right) { writer.Write(" "); } } writer.WriteLine(""); if (!Page.DesignMode) { writer.ExitLayout(Style, Control.BreakAfter); } else { writer.ExitLayout(Style, false); } break; case ListSelectType.Radio: case ListSelectType.CheckBox: String selectTypeString = (selectType == ListSelectType.Radio) ? "radio" : "checkbox"; Alignment alignment = (Alignment)Style[Style.AlignmentKey, true]; if (!Device.Tables || alignment == Alignment.Left || alignment == Alignment.NotSet) { writer.EnterStyle(Style); bool breakAfter = false; for (int itemIndex = 0; itemIndex < items.Count; itemIndex++) { if (breakAfter) { writer.WriteBreak(); } MobileListItem item = items[itemIndex]; writer.WriteBeginTag("input"); writer.WriteAttribute("type", selectTypeString); writer.WriteAttribute("name", renderName); WriteItemValueAttribute(writer, itemIndex, item.Value); if (item.Selected && (Control.IsMultiSelect || itemIndex == selectedIndex) && Device.SupportsUncheck) { writer.Write(" checked>"); } else { writer.Write(">"); } writer.WriteEncodedText(item.Text); breakAfter = true; } writer.ExitStyle(Style, Control.BreakAfter); } else // Device supports tables and alignment is non default. { Wrapping wrapping = (Wrapping)Style[Style.WrappingKey, true]; bool nowrap = (wrapping == Wrapping.NoWrap); writer.EnterLayout(Style); writer.WriteFullBeginTag("table"); writer.BeginStyleContext(); for (int itemIndex = 0; itemIndex < items.Count; itemIndex++) { MobileListItem item = items[itemIndex]; writer.WriteFullBeginTag("tr"); writer.WriteBeginTag("td"); if (nowrap) { writer.WriteAttribute("nowrap", "true"); } writer.Write(">"); writer.WriteBeginTag("input"); writer.WriteAttribute("type", selectTypeString); writer.WriteAttribute("name", renderName); WriteItemValueAttribute(writer, itemIndex, item.Value); if (item.Selected && (Control.IsMultiSelect || itemIndex == selectedIndex) && Device.SupportsUncheck) { writer.Write(" checked>"); } else { writer.Write(">"); } writer.MarkStyleContext(); writer.EnterFormat(Style); writer.WriteEncodedText(item.Text); writer.ExitFormat(Style); writer.UnMarkStyleContext(); writer.WriteEndTag("td"); writer.WriteEndTag("tr"); } writer.WriteEndTag("table"); writer.EndStyleContext(); writer.ExitFormat(Style, Control.BreakAfter); } break; } }
public async Task <BaseResponse> UpdateMobile(MobileListItem model) { BaseResponse response = null; try { var repo = (_mobilieRepository as MobileRepository); response = BaseResponse.Ok(); var existingMobile = repo.FindBy(m => m.Id == model.MobileId) .Include(p => p.Photos) .SingleOrDefault(); if (existingMobile != null) { var mobile = new Mobile { Id = model.MobileId, Brand = model.Brand, CPU = model.CPU, InternalMemory = model.InternalMemory, Name = model.Name, OS = model.OS, Price = model.Price, RAM = model.RAM, ScreenResolution = model.ScreenResolution, ScreenSize = model.ScreenSize, Size = model.Size, VideoUrl = model.VideoUrl, Weight = model.Weight }; repo.Context.Entry(existingMobile).CurrentValues.SetValues(mobile); foreach (var existingPhoto in existingMobile.Photos.ToList()) { if (model.Photos.Any(p => p.PhotoId == existingPhoto.Id)) { repo.Context.Photos.Remove(existingPhoto); } } foreach (var photo in model.Photos) { var existingPhoto = existingMobile.Photos .Where(p => p.Id == photo.PhotoId) .SingleOrDefault(); if (existingPhoto != null) { repo.Context.Entry(existingPhoto).CurrentValues.SetValues(photo); } else { var newPhoto = new Domain.DAO.Entities.Photo { Value = photo.Base64 }; existingMobile.Photos.Add(newPhoto); } } repo.Context.SaveChanges(); } } catch (Exception ex) { _logger.LogError(ex.Message); response = BaseResponse.Fail($"Could not update item"); } return(response); }
public void Remove(MobileListItem item) { }
public int IndexOf(MobileListItem item) { }
public void Add(MobileListItem item) { }
// Constructors public ListCommandEventArgs(MobileListItem item, object commandSource, System.Web.UI.WebControls.CommandEventArgs originalArgs) {}
public ListCommandEventArgs(MobileListItem item, object commandSource) {}
// Constructors public ListDataBindEventArgs(MobileListItem item, object dataItem) {}
public bool Contains(MobileListItem item) {}
public bool Contains(MobileListItem item) { }
public int IndexOf(MobileListItem item) {}
public void Insert(int index, MobileListItem item) { }
public void Insert(int index, MobileListItem item) {}
// Constructors public ListDataBindEventArgs(MobileListItem item, object dataItem) { }
public void Remove(MobileListItem item) {}
/// <include file='doc\HtmlListAdapter.uex' path='docs/doc[@for="HtmlListAdapter.RenderList"]/*' /> protected virtual void RenderList(HtmlMobileTextWriter writer) { MobileListItemCollection items = Control.Items; Wrapping wrap = Style.Wrapping; // used for tables, no decoration case. if (items.Count == 0) { return; } int pageStart = Control.FirstVisibleItemIndex; int pageSize = Control.VisibleItemCount; // Determine what markup to use. String listSuffix, itemPrefix, itemSuffix; ListDecoration decoration = Control.Decoration; bool insideStyle = true; // We know that for table tag, outer style doesn't carry over // into inside tags so style state needs to be reset. // For other cases, we enter the style here once and exit at the // end once. if (decoration != ListDecoration.None || !Device.Tables) { writer.EnterStyle(Style); insideStyle = false; } switch (decoration) { case ListDecoration.Bulleted: writer.WriteLine("<ul>"); listSuffix = "</ul>"; itemPrefix = "<li>"; itemSuffix = "</li>"; if (!Device.RendersBreaksAfterHtmlLists) { listSuffix += "<br>"; } break; case ListDecoration.Numbered: if (pageStart == 0) { writer.WriteLine("<ol>"); } else { writer.Write("<ol start=\""); writer.Write(pageStart + 1); writer.WriteLine("\">"); } listSuffix = "</ol>"; itemPrefix = "<li>"; itemSuffix = "</li>"; if (!Device.RendersBreaksAfterHtmlLists) { listSuffix += "<br>"; } break; default: if (Device.Tables) { listSuffix = "</table>"; Style.Wrapping = Wrapping.NotSet; writer.EnterLayout(Style); writer.WriteLine("<table>"); if (wrap == Wrapping.NoWrap) { itemPrefix = "<tr nowrap><td>"; } else { itemPrefix = "<tr><td>"; } itemSuffix = "</td></tr>"; } else { listSuffix = String.Empty; itemPrefix = String.Empty; itemSuffix = "<br>"; } break; } bool hasCmdHandler = Control.HasItemCommandHandler; for (int i = 0; i < pageSize; i++) { MobileListItem item = items[pageStart + i]; writer.Write(itemPrefix); if (insideStyle) { writer.BeginStyleContext(); writer.EnterFormat(Style); } if (Control.ItemsAsLinks) { RenderBeginLink(writer, item.Value); } else if (hasCmdHandler) { writer.WriteBeginTag("a"); RenderPostBackEventAsAttribute(writer, "href", item.Index.ToString(CultureInfo.InvariantCulture)); writer.Write(">"); } writer.WriteEncodedText(item.Text); if (hasCmdHandler || Control.ItemsAsLinks) { RenderEndLink(writer); } if (insideStyle) { writer.ExitFormat(Style); writer.EndStyleContext(); } writer.WriteLine(itemSuffix); } if (listSuffix == null || listSuffix.Length > 0) { writer.WriteLine(listSuffix); } if (decoration != ListDecoration.None || !Device.Tables) { writer.ExitStyle(Style); } else { writer.ExitLayout(Style); Style.Wrapping = wrap; } }
public void SetAll(MobileListItem[] value) {}
/// <summary> /// </summary> internal ItemTreeNode(String itemText) : base(itemText) { this._runtimeItem = new MobileListItem(); this._value = null; this._selected = false; }
void RenderInputElementSet(XhtmlMobileTextWriter writer) { string wrappingTag = Device.Tables ? "table" : (((string)Device["usePOverDiv"] == "true") ? "p" : "div"); ListSelectType selectType = Control.SelectType; MobileListItemCollection items = Control.Items; // Review: We always render a table. Should we optimize away the table tags when the alignment is left? String selectTypeString = (selectType == ListSelectType.Radio) ? "radio" : "checkbox"; ClearPendingBreakIfDeviceBreaksOnBlockLevel(writer); // Since we are writing a block-level element in all cases. ConditionalEnterLayout(writer, Style); RenderOpeningListTag(writer, wrappingTag); for (int itemIndex = 0; itemIndex < items.Count; itemIndex++) { MobileListItem item = items[itemIndex]; if (Device.Tables) { writer.WriteFullBeginTag("tr"); writer.WriteFullBeginTag("td"); } writer.WriteBeginTag("input"); writer.WriteAttribute("type", selectTypeString); writer.WriteAttribute("name", Control.UniqueID); WriteItemValueAttribute(writer, itemIndex, item.Value); String accessKey = GetCustomAttributeValue(item, XhtmlConstants.AccessKeyCustomAttribute); if (accessKey != null && accessKey.Length > 0) { writer.WriteAttribute("accesskey", accessKey, true); } // Assumption: Device.SupportsUncheck is always true for Xhtml devices. if (item.Selected && (Control.IsMultiSelect || itemIndex == Control.SelectedIndex)) { writer.Write(" checked=\"checked\"/>"); } else { writer.Write("/>"); } writer.WriteEncodedText(item.Text); if (Device.Tables) { writer.WriteEndTag("td"); } if ((string)Device["usePOverDiv"] == "true" || !Device.Tables) { writer.Write("<br/>"); } if (Device.Tables) { writer.WriteEndTag("tr"); } } RenderClosingListTag(writer, wrappingTag); ConditionalExitLayout(writer, Style); }