0

私はAsp.net3.5、C#、Visual Studio 2008を使用しています。わかりました。ここで本当に怠け者であることは認めますが、これを行う方法が必要であることはわかっています。

2つの同一のリストビュー(listview1とlistview2)があります。両方のリストビューの列1にチェックボックスがあり、ページにボタンがあります。

ボタンが押されたときにlistview1でチェックされた行をlistview2にコピーしたいと思います。

listview1をループすることでこれを行う方法を知っていますが、ObjectDataSourceを使用して1つのステップでこれを行うにはどうすればよいですか?

4

2 に答える 2

0

ObjectDataSource-Methods が既にあるクラスにメソッドを実装します。ボタン クリック ハンドラーで、どの項目が選択されているかを調べ、それらを Copy メソッドに渡します。

このコピー メソッドは、DataObjectSource が使用している基になるデータで操作を実行するために必要なロジックを提供する必要があります。

その後、両方の ListView で .DataBind() を手動で実行して、最新のデータを確保します。

于 2010-01-13T22:19:58.183 に答える
0

おそらくいくつかのlinqマジック、次のようなもの

var data = listView1.Items.Where(i=> i.selected == true);

viewlist2.DataSource = data;
viewlist2.DataBind();

私は今VSを持っていないので、このコードは頭のてっぺんからのものであり、プロパティがそのように命名されているかどうか、アイテムで直接whereを使用できるかどうか、または.ToListを実行する必要があるかどうかはわかりません拳

于 2010-01-13T21:44:00.627 に答える