2011-01-31 19 views

答えて

3

実行時に、列をドラッグアンドドロップすることで列を並べ替えることができます。

GridView gv = listview.View as GridView; 
GridViewColumn cd = gv.Columns[0]; 
gv.Columns.Remove(cd); 
gv.Columns.Add(cd); 

(リストビューを仮定すると、あなたのListViewがあり、そのビューには、少なくとも2列でのGridViewである)このコードは最初の列を配置します:プログラムで列の順序を変更するには、例えば、ListView.ViewのColumnsコレクションを変更する必要があります最後に。

プログラムで行を並べ替えるには、ListViewの背後にあるCollectionを変更します(ListViewにソートがない場合、行の順序を変更したくない場合)。

ドラッグアンドドロップで行を並べ替えるには、ドラッグアンドドロップ操作を定義するすべての美しいイベントを処理するコードを記述する必要があります。例と出発点はthis blog postです。

さらに正確な情報を提供すれば、より詳細な回答が得られます。

+0

列の並べ替えはOKですが、行の並び順はどうなりますか?私はそれのための任意のコードを追加する必要がありますか? – Thomas

+0

はい、コードを追加する必要があります。私は行を並べ替えるためのビルトイン機能を見ていません。しかし、私が指摘したブログ記事にあるように、マウスドラッグイベントを処理することで可能です。 Pavan Podilaには、再利用可能なDrag'n'Dropコード(http://blog.pixelingene.com/?cat=19)がありますが、これは役立つかもしれませんが、行を並べ替えるためのコードを記述する必要があるという考え方です。 –

0

行を並べ替え、新しい行の順序を保存または使用したい場合は、インデックスまたはRowIndexという名前の列を追加するか、コントロールの基になるデータソースに何かを追加することをお勧めします。この方法で、ドラッグ&指定された行のその列の値を変更するだけで、すべての操作が完了したら、次のレンダリングなどに必要なものを保存または使用できます。

関連する問題