Created
January 16, 2020 14:25
-
-
Save gavilanch/88e6e64433e94c66f8136162821f3c4d to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<div class="multiple-selector"> | |
<ul class="selectable-ul"> | |
@foreach (var item in NoSelected) | |
{ | |
<li @onclick="@(() => Select(item))">@item.Value</li> | |
} | |
</ul> | |
<div class="multiple-selector-buttons"> | |
<button type="button" @onclick="SelectAll">>></button> | |
<button type="button" @onclick="DeselectAll">@removeAllText</button> | |
</div> | |
<ul class="selectable-ul"> | |
@foreach (var item in Selected) | |
{ | |
<li @onclick="@(() => Deselect(item))">@item.Value</li> | |
} | |
</ul> | |
</div> | |
@code { | |
private string removeAllText = "<<"; | |
[Parameter] | |
public List<MultipleSelectorModel> NoSelected { get; set; } = new List<MultipleSelectorModel>(); | |
[Parameter] | |
public List<MultipleSelectorModel> Selected { get; set; } = new List<MultipleSelectorModel>(); | |
private void Select(MultipleSelectorModel item) | |
{ | |
NoSelected.Remove(item); | |
Selected.Add(item); | |
} | |
private void Deselect(MultipleSelectorModel item) | |
{ | |
Selected.Remove(item); | |
NoSelected.Add(item); | |
} | |
private void SelectAll() | |
{ | |
Selected.AddRange(NoSelected); | |
NoSelected.Clear(); | |
} | |
private void DeselectAll() | |
{ | |
NoSelected.AddRange(Selected); | |
Selected.Clear(); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment