test_changeorder_test_visua.../Test_ChangeOrder/MoveUp.cs
Eugen Höglinger 9ff0f0f4cb Initialized
2024-10-09 15:43:39 +02:00

48 lines
1.4 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Test_ChangeOrder
{
internal class MoveUp : MoveDown
{
protected override List<string> NewValues(List<string> valuesBefore, string selectedValue, List<string> valuesAfter)
{
List<string> newValue = new List<string>();
newValue.Clear();
for (int i = 0; i < valuesBefore.Count - 1; i++)
{
newValue.Add(valuesBefore[i]);
}
newValue.Add(selectedValue);
newValue.Add(valuesBefore[valuesBefore.Count - 1]);
newValue.AddRange(valuesAfter);
return newValue;
}
protected override bool ValidSelection(List<string> values, int selectedRow)
{
//Die ausgewählte Position muss min. 0 sein, weil sie sonst nicht nach vorne geschoben werden kann und
//die Position darf nicht größer als die max. Anzahl der Elemnte minus 1 sein
if (selectedRow > 0 && selectedRow < values.Count)
{
return true;
}
else
{
return false;
}
}
protected override void SetSelectedRow(int selectedRow)
{
SelectedRow = selectedRow - 1;
}
}
}