2014-01-05 2 views
0

Я использую следующий код для перетаскивания из окна списка в текстовое поле, , когда у меня есть одно текстовое поле, и я использую следующий код, который не позволяет перетащить элемент в текстовое поле, которое уже заполнено ПунктПеретащите несколько элементов в одно и то же текстовое поле

private void listbox_SelectionChanged(object sender, SelectionChangedEventArgs e) 
     { 
      if ((e.AddedItems.Count == 1) && 
       (string.IsNullOrEmpty(textbox1.Text))) 

, но при добавлении нового текстового поля (TextBox2) и попытаться проверить, если он уже заполнен, то проверка не удалась для всех текстовых полей, как я могу избежать этого?

 private void listbox_SelectionChanged(object sender, SelectionChangedEventArgs e) 
     { 
      if ((e.AddedItems.Count == 1) && 
       (string.IsNullOrEmpty(textbox1.Text) || string.IsNullOrEmpty(textbox2.Text))) 
      { 
.... 

ответ

1

Я бы рекомендовал использовать Drag/события бросания для текстовых полей, как:

private void textBox1_DragEnter(object sender, System.Windows.Forms.DragEventArgs e) 

и внутри метода проверки обработчика, если падение допускается. Это работает более логично.

Проверьте Полный текст статьи здесь - http://msdn.microsoft.com/en-us/library/aa984430%28v=vs.71%29.aspx

+0

, когда я поставил код перетаскивания на XAML и в главном окне, отладчик не останавливается, когда я перетащить элемент в текстовом поле, какие-либо идеи? –

+0

частная пустота DropList_DragEnter (объект отправителя, DragEventArgs е) { если (e.Data.GetDataPresent ("myFormat") || отправитель == e.Source!) { e.Effects = DragDropEffects.None; }} –

+0

в XAML -

Смежные вопросы