Нет, Вам все еще нужно к scp [from] [to]
, какой бы ни способ, которым Вы копируете
различие, Вам нужно к scp -p server:serverpath localpath
Давайте просто посмотрим на один из ListBoxes, поскольку они оба, по сути, одинаковы.
Нас беспокоит следующий код:
<ListBox ItemsSource="{Binding Path=Applications,
UpdateSourceTrigger=PropertyChanged, Mode=OneWay}" />
Поскольку вы новичок в WPF, позвольте мне сказать, что вам, вероятно, не нужны UpdateSourceTrigger
или Mode
, что оставляет нам следующее:
<ListBox ItemsSource="{Binding Path=Applications}" />
Вы упомянули, что Applications является общедоступным свойством в вашем коде -за. Вам нужно, чтобы это было DependencyProperty
, и оно должно запускать события при его изменении - большинство людей используют для этого ObservableCollection .
Так что ваш код программной части будет иметь что-то вроде это:
public ObservableCollection<string> Applications
{
get { return (ObservableCollection<string>)GetValue(ApplicationsProperty); }
set { SetValue(ApplicationsProperty, value); }
}
public static readonly DependencyProperty ApplicationsProperty =
DependencyProperty.Register("Applications",
typeof(ObservableCollection<string>), typeof(Window1),
new UIPropertyMetadata(null));
Затем, если вы хотите добавить его, вы сделаете что-то вроде этого:
this.Applications = new ObservableCollection<string>();
Applications.Add("Whatever");
Наконец, чтобы «простой» синтаксис привязки работал в XAML,
Проблема в том, что значение вашего свойства не изменилось. Это все тот же список, та же ссылка.
Одним из решений может быть то, что ваши коллекции имеют тип ObservableCollection
. Эти списки содержат события для WPF при добавлении или удалении элементов.