/// <summary> /// Render table rows with even and odd classes and selection column (if enabled) /// </summary> /// <returns></returns> public MvcHtmlString RenderTableRows() { var sb = new StringBuilder(); int cnt = 0; foreach (T row in GetCurrentPageData()) { cnt++; sb.AppendFormat("<tr class=\"{0}\">", cnt % 2 == 0 ? "even" : "odd"); foreach (var columnDef in Cols.Where(x => x.AllowWeb)) { if (columnDef.KeySelector != null) { var selVal = columnDef.KeySelector(row).ToString(); bool isSelected = SelectedKeys.Contains(selVal); sb.AppendFormat("<td><input type='checkbox' value='{2}' {1} class='js-grid-selector' onclick=\"gridSelect('{0}',$(this))\" />{3}</td>", ID, isSelected ? "checked='checked'" : "", selVal, columnDef.WebFormat(row)); } else { sb.AppendFormat("<td>{0}</td>", columnDef.WebFormat(row)); } } sb.AppendLine("</tr>"); } return(new MvcHtmlString(sb.ToString())); }
protected override void OnPropertyChanged([CallerMemberName] string propertyName = null) { base.OnPropertyChanged(propertyName); if (propertyName == nameof(SelectedKeys)) { foreach (var key in keyButtons) { key.IsEnabled = SelectedKeys == null || !SelectedKeys.Any(x => x.Equals(key.Text)); } } else if (propertyName == nameof(KeyColor)) { foreach (var key in keyButtons) { key.BackgroundColor = KeyColor; } } else if (propertyName == nameof(KeyTextColor)) { foreach (var key in keyButtons) { key.TextColor = KeyTextColor; } } }
public override DialogResult Show() { if (SelectedKeys == null || !SelectedKeys.Any()) { SelectedKeys = new [] { options.First().Item1 }; } return(base.Show()); }
protected void AddSelectedKey(KeyModel selection) { if (SelectedKeys.Contains(selection) == false) { SelectedKeys.Add(selection); OnPropertyChanged("SelectedKeys"); UpdatePinning(); } }
private void SelectAndClose() { SelectedKeys.Clear(); foreach (ListViewItem item in listView1.SelectedItems) { SelectedKeys.Add((BaseKey)item.Tag); } this.DialogResult = DialogResult.OK; this.Close(); }
protected override void OnInitialized() { this.ClassMapper.Add(PrefixName); _targetKeys = TargetKeys.ToList(); var selectedKeys = SelectedKeys.ToList(); _sourceSelectedKeys = selectedKeys.Where(key => !_targetKeys.Contains(key)).ToList(); _targetSelectedKeys = selectedKeys.Where(key => _targetKeys.Contains(key)).ToList(); int count = _sourceSelectedKeys.Count; InitData(); MathTitleCount(); }
private async ValueTask InitKeys() { keyButtons = new List <Button>(); await Task.Run(() => { for (int i = 0; i < keys.LongLength; i++) { Button button = new Button { Text = keys[i], BackgroundColor = Color.White, TextColor = Color.Black, FontSize = keys[i].Length == 1 ? 14 : 12, WidthRequest = 40, Margin = 2 }; button.Clicked += delegate { if (KeyCommand == null) { return; } if (KeyCommand.CanExecute(null)) { if (SelectedKeys == null) { SelectedKeys = new ObservableCollection <string>(); } button.IsEnabled = false; SelectedKeys.Add(button.Text); KeyCommand.Execute(button.Text); } }; keyButtons.Add(button); } }); }
public void ResetSelection() { SelectedKeys.Clear(); SelectedKey = null; if (MultiSelect) { if (SelectedKeysChanged.HasDelegate) { SelectedKeysChanged.InvokeAsync(SelectedKeys); } } else { if (SelectedKeyChanged.HasDelegate) { SelectedKeyChanged.InvokeAsync(SelectedKey); } } StateHasChanged(); }
public void RemoveSelection(string key) { if (MultiSelect) { if (!SelectedKeys.Contains(key)) { throw new Exception("This key was not already selected."); } if (OnChange.HasDelegate) { OnChange.InvokeAsync(new BFUDropdownChangeArgs(key, false)); } SelectedKeys.Remove(key); //this used to be following the next command. A bug? I moved it here... if (SelectedKeysChanged.HasDelegate) { SelectedKeysChanged.InvokeAsync(SelectedKeys); } } else { if (SelectedKey != null) { SelectedKey = null; if (OnChange.HasDelegate) { OnChange.InvokeAsync(new BFUDropdownChangeArgs(key, false)); } if (SelectedKeyChanged.HasDelegate) { SelectedKeyChanged.InvokeAsync(SelectedKey); } } } StateHasChanged(); }
public void AddSelection(string key) { if (MultiSelect) { if (SelectedKeys.Contains(key)) { throw new Exception("This key was already selected."); } if (OnChange.HasDelegate) { OnChange.InvokeAsync(new BFUDropdownChangeArgs(key, true)); } SelectedKeys.Add(key); if (SelectedKeysChanged.HasDelegate) { SelectedKeysChanged.InvokeAsync(SelectedKeys); } } else { if (SelectedKey != key) { SelectedKey = key; if (OnChange.HasDelegate) { OnChange.InvokeAsync(new BFUDropdownChangeArgs(key, true)); } if (SelectedKeyChanged.HasDelegate) { SelectedKeyChanged.InvokeAsync(SelectedKey); } } isOpen = false; } StateHasChanged(); }
public HangmanViewModel() { SelectedCategoryName = string.Empty; termRepository = new TermRepository(); InitData(); NewGameCommand = new Command(async() => await StartNewGame()); KeyCommand = new Command((letter) => { if (!Term.ToUpper().Contains(letter.ToString())) { NoOfWrongAttemps++; WrongLetters += string.IsNullOrEmpty(WrongLetters) ? letter : $",{letter}"; } DiscoveredLetters = string.Join(";", SelectedKeys); if (NoOfWrongAttemps >= 6 || !Term.ToUpper().Any(x => !string.IsNullOrWhiteSpace(x.ToString()) && !SelectedKeys.Contains(x.ToString()))) { OnFinishGame(NoOfWrongAttemps < 6); } }); SelectCategoryCommand = new Command(async() => { TermCategoryModel currentCategory = selectedCategory; await GetTermCategory(); if (currentCategory.Id != selectedCategory.Id) { await StartNewGame(); } }); }