Вы пытались найти его в Google? Перемещение элементов вверх / вниз, например, в элементе управления списком .
public class SmartListBox : ListBox
{
//Moves the selected items up one level
public MoveUp()
{
for(int i = 0; i < Items.Count; i++)
{
if (Items[i].Selected)//identify the selected item
{
//swap with the top item(move up)
if (i > 0 && !Items[i - 1].Selected)
{
ListItem bottom = Items[i];
Items.Remove(bottom);
Items.Insert(i - 1, bottom);
Items[i - 1].Selected = true;
}
}
}
}
//Moves the selected items one level down
public MoveDown()
{
int startindex = Items.Count -1;
for (int i = startindex; i > -1; i--)
{
if (Items[i].Selected)//identify the selected item
{
//swap with the lower item(move down)
if (i < startindex && !Items[i + 1].Selected)
{
ListItem bottom = Items[i];
Items.Remove(bottom);
Items.Insert(i + 1, bottom);
Items[i + 1].Selected = true;
}
}
}
}
}
В итоге я придерживался этого:
<exec executable="${basedir}\myexefile.exe}" />
Добавить атрибут resolveexecutable :
<exec executable="programName.exe"
resolveexecutable="true"
dir="C:\test\foo\" />
resolveexecutable Когда это атрибут истинен, имя исполняемый файл сначала разрешается против на основе проекта, и если это так не существует, против исполнения каталог, если он указан. В Unix систем, если вы хотите разрешить выполнение команд в пользовательском path, установите значение false. начиная с Ant 1.6 Нет, по умолчанию - false
Попробуйте следующее:
<property name="prog.dir" value="C:/test/foo" />
<exec executable="${prog.dir}/programName.exe"/>
Похоже, что каталог, из которого вы запускаете программу, должен находиться в вашем пути сборки.