2016-10-21 4 views
0

タイトルの質問に正確に尋ねる方法がわかりませんでした。私は2列のlistview1ボックスを持っています。最初の列には選手名があり、2列目には選手の得点があります。 listview2ボックスには、他のゲームの選手の名前と得点が表示されます。 listview1からlistview2にスコアを加えて、両方のゲームの総得点を与え、プレイヤー名を2回追加しないで、合計スコアを合計してlistview2に合計を入れるだけです。私はスコアの下位項目を追加しようとしましたが、運がありませんでした。私もクローンを試しましたVisual BasicではListView1からListView2に項目を追加する方法はありますか?

ListView2.Items.Add(ListView1.Items(0).Clone()) 

しかし、私は必要なものを追加しませんでした。

誰もがこれを行うための最善の方法はありますか? ありがとうございます。

+0

中間のPOCOベースの "モデル"(または "ビューモデル")を使用して、表示する情報を表現してから、直接ListBox.Itemsを操作する代わりにWinFormのデータバインディング機能を使用して表示することをお勧めします。 – Dai

+1

あなたはいくつかの数字を追加する運が必要はありません。変数を宣言してゼロに初期化し、追加する項目をループし、各値を実行中の合計に追加する必要があります。最後に、変数に合計が含まれています。これは、計算機で物理ページに数値を追加する場合とまったく同じように動作します。 'ListView'には' Strings'が含まれているので、数値として追加するには数値に変換する必要があります。 – jmcilhinney

+0

はい、本当にユーザーインターフェースの面で考えるべきではありません。リストボックス、ボタンなどは、何らかの種類の観測可能なコレクション、mvvmとlinqを使用します – bamanow

答えて

0

あなたはリストボックス2にリストボックス1からすべての項目を転送したい場合、あなたは「For Nextループ」を使用すべきであるリストボックス2にリストボックス1からのデータを転送するためにボタンを使用し

例:

Listbox2.Items.Clear() Clear first the data in ListBox 2 

then add this loop assuming you want to select all data 

For i = 0 To Listbox1.Items.Count - 1 

    Listbox2.Items.Add(Listbox1.Items(i).ToString) 

Next 
+0

ありがとう – Darryl

関連する問題