Не может заставить ListBox и UpdateTarget работать

Потребление веб-сервиса без файла конфигурации очень просто, поскольку я обнаружил. Просто необходимо создать объект привязки и объект адреса и передать их или конструктору клиентского прокси или к универсальному экземпляру ChannelFactory. Можно посмотреть на значение по умолчанию app.config для наблюдения что настройки использовать, затем создать статический вспомогательный метод где-нибудь, который инстанцирует прокси:

internal static MyServiceSoapClient CreateWebServiceInstance() {
    BasicHttpBinding binding = new BasicHttpBinding();
    // I think most (or all) of these are defaults--I just copied them from app.config:
    binding.SendTimeout = TimeSpan.FromMinutes( 1 );
    binding.OpenTimeout = TimeSpan.FromMinutes( 1 );
    binding.CloseTimeout = TimeSpan.FromMinutes( 1 );
    binding.ReceiveTimeout = TimeSpan.FromMinutes( 10 );
    binding.AllowCookies = false;
    binding.BypassProxyOnLocal = false;
    binding.HostNameComparisonMode = HostNameComparisonMode.StrongWildcard;
    binding.MessageEncoding = WSMessageEncoding.Text;
    binding.TextEncoding = System.Text.Encoding.UTF8;
    binding.TransferMode = TransferMode.Buffered;
    binding.UseDefaultWebProxy = true;
    return new MyServiceSoapClient( binding, new EndpointAddress( "http://www.mysite.com/MyService.asmx" ) );
}
6
задан RobSullivan 10 September 2009 в 20:42
поделиться

1 ответ

Связывание элементов обрабатывается несколько иначе, чем стандартное связывание DependencyProperty в WPF (в частности, ItemsControl ).

Я думаю, вам нужно что-то вроде следующего:

var itemsView = CollectionViewSource.GetDefaultView(myListBox.ItemsSource);
itemsView.Refresh()

На самом деле вы хотите обновить объект ICollectionView . Фактически это объект, который управляет привязкой коллекции за вас. См. страницу MSDN для получения дополнительной информации.

12
ответ дан 9 December 2019 в 20:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: