2012-04-30 15 views
4
私はそれは、クライアントとサーバ間のファイル転送アプリケーションですListView1のからドラッグして、それらの両方がリストビュー
であるlistLocal にドロップしようとしている

、アプリケーションがlistLocal小さなローカルファイルエクスプローラを示しており、リモートファイルエクスプローラListView1の
私はlistLocal
にListView1のからアイテムをドロップすると、アイテムにポインタが[フォルダ]がitem.Selected = trueを強調すべきです。
でも動作しませんでした。まだ動作していませんでした。listLocal.FocuslistLocal.Selectはまだ動作しません。どうすれば動作させることができますか?
listviewでアイテムを強調表示する方法は?

注:item.BackColor = Color.RoyalBlue;を使用したときは機能しましたが、アイコンは強調表示されません。あなたはのdragOverメソッドを処理しようとするかもしれない偽

+1

HideSelectionプロパティをFalseに設定します。 –

+0

@HansPassant Solved。感謝の男 –

+3

@ハンスパッサントあなたは答えとしてあなたのコメントを投稿する必要があります質問に答えてマークするように!右? –

答えて

4

。 またはMicrosoftの例を見てください。MSDN

0

にHideSelectionプロパティを設定し

private void listLocal_DragOver(object sender, DragEventArgs e) 
    { 
     if (!e.Data.GetDataPresent(typeof(ListViewItem))) return; 
     Point p = listLocal.PointToClient(MousePosition); 
     ListViewItem targetItem = listLocal.GetItemAt(p.X, p.Y); 
     if (targetItem != null)    //if dropping on a target item 
     { 
     targetItem.Selected = true; 
     if (targetItem.SubItems.Count > 1) e.Effect = DragDropEffects.None;//if IsFile 
     else e.Effect = DragDropEffects.Copy; 
     return; 
     } 
     foreach (ListViewItem item in listLocal.Items) item.Selected = false; //if dragging into current address 
     e.Effect = DragDropEffects.Copy; 
    } 
+0

このリンクは質問に答えるかもしれませんが。回答の重要な部分を投稿に入れることが重要です。 [レビュー](http://stackoverflow.com/review/late-answers/11982391) – Raju

関連する問題