1

私は、VB6 プログラムを VB.NET に変換する任務を負っています。私のオンライン調査では、コードを調べて、持っているバリアントを取り除く必要があると誰もが言っているようです。これまでのところかなり幸運でしたが、これを交換する際に問題が発生しています。

Private Sub lvThumbView_OLEDragDrop(Data As MSComctlLib.DataObject)
    Dim File As Variant

    For Each File In Data.Files
        Select Case UCase(right(File, 3))
            Case "JPG", "BMP"
            ..... 
        End Select
    Next File
End Sub

私はまだVB(6または.netのいずれか)にかなり慣れていないため、これに代わるものを見つけるのに苦労しています。VB.net の変換ツールはこれをうまく処理できますか? または、これを変更する必要がありますか? もしそうなら、これに代わるより良い方法はありますか?私の愚かさを許してください。

前もって感謝します。

4

2 に答える 2

2

コードを見ると、VB6 Listview コントロールを .NET に置き換える可能性がありますListView control。あなたSubがリストしたのは、ListView コントロールの DragDrop イベントを処理するように見えます (私はこのコントロールに慣れていませんが、名前からすると、これが目的のようです)。

DragDropイベントと ListView コントロールのメソッドを見てDoDragDrop()、イベントに関連付けられたデータとして文字列のコレクションを使用する方法を確認してください。

于 2009-12-02T23:39:28.370 に答える
1

事前に可能な限りすべての変更を行っておくと便利ですが、質問がある場合は、変換後まで待つ時間を節約できます.

後でいくつかの変更を行う必要がありますが、先に進んで .net 変換を行い、残ったものをクリーンアップできます。

たとえば、.net 変換の前にバリアントを文字列に変換すると、.net リストビューの DragEventArgs.data が何か違うことがわかります。(それが何かはわかりませんが、変換を行った後の方が見つけやすいでしょう。)

于 2009-12-02T23:49:43.717 に答える