Компьютерные черви исследовались в начале восьмидесятых прошлого века в ксероксе Научно-исследовательский центр Пало-Альто.
От John Shoch и Jon Hupp Программы "Червя" - Ранний Опыт с Распределенным Вычислением " (Связь ACM, Объем марта 1982 25 Номеров 3, pp.172-180, идет 1982):
В Наездник Ударной взрывной волны , Дж. Brunner разработал понятие всемогущей программы "солитера", работающей свободный через сеть компьютеров - идея, которая может казаться довольно тревожащей, но которая является также вполне вне наших допустимых нагрузок по току. Базовая модель, однако, остается очень провокационной: программа или вычисление, которое может переместиться с машины на машину, используя ресурсы по мере необходимости, и копируя себя при необходимости.
В том же духе, мы когда-то описали вычислительную модель, основанную на классическом научно-фантастическом фильме, Блоб : программа, которая начала работать в одной машине, но поскольку ее аппетит к вычислительным циклам вырос, она могла протянуться, находит неиспользованные машины и растет для затрагивания тех ресурсов. В середине ночи такая программа могла мобилизовать сотни машин в одном здании; утром, когда пользователи исправили свои машины, "блоб" должен будет отступить организованным способом, собирая промежуточные результаты его вычисления. Скрывавшийся в одной или двух машинах в течение дня, программа могла появиться снова позже, поскольку ресурсы стали доступными, снова развернув вычисление. (Эта привязка к ночному исследованию привела одного исследователя описывать их как "программы вампира".)
Заключение в кавычки Alan Kay: "Лучший способ предсказать будущее состоит в том, чтобы изобрести его".
Вы можете поместить границу вокруг StackPanel и установить для нее отступы. В конечном итоге я делаю это часто, так как есть много UIElements, у которых нет свойства заполнения.
<Border Padding="10">
<StackPanel>
<!--...-->
</StackPanel>
</Border>
(Примечание: все FrameworkElements имеют свойство Margin, которое будет размещать элемент, но не включает ширину поля как часть ActualWidth).
Если вы хотите разместить элементы внутри StackPanel, вам нужно добавить поле для каждого дочернего элемента, как сказал Роб.
Или вы могли бы сделать что-то похожее на TiM:
<Border>
<StackPanel Margin="10">
...
</StackPanel>
</Border>
Вместо этого вы, вероятно, захотите добавить поля к элементам на панели. Результат будет тот же, только нужно подойти к нему задом наперед.