На самом деле вы должны использовать несколько инструментов для получения пуленепробиваемого подхода:
DIR_PATH=`readlink -f "${the_stuff_you_test}"` # Get rid of symlinks and get abs path
if [[ -d "${DIR_PATH}" ]] ; Then # now you're testing
echo "It's a dir";
fi
Не нужно беспокоиться о пробелах и специальных символах, пока вы используете "${}"
.
Обратите внимание, что [[]]
не так портативен, как []
, но так как большинство людей работают с современными версиями Bash (так как в большинстве случаев большинство людей даже не работают с командной строкой: -p), преимущество больше, чем проблема.
Нет никакого DragMove для PopUp. Просто маленькая работа вокруг, существует партия улучшений, которые можно добавить к этому.
<Popup x:Name="pop" IsOpen="True" Height="200" Placement="AbsolutePoint" Width="200">
<Rectangle Stretch="Fill" Fill="Red"/>
</Popup>
В коде позади, добавьте это событие mouseMove
pop.MouseMove += new MouseEventHandler(pop_MouseMove);
void pop_MouseMove(object sender, MouseEventArgs e)
{
if (e.LeftButton == MouseButtonState.Pressed)
{
pop.PlacementRectangle = new Rect(new Point(e.GetPosition(this).X,
e.GetPosition(this).Y),new Point(200,200));
}
}