1

WPF を初めて使用するので、次のシナリオでどのコントロールを使用するのが最適かについてのガイダンスを探しています。

2 つのリストを並べて表示するアプリケーションを作成する必要があります。左側のリストには、ユーザーのリストが表示されます。右側のリストには、権限のリストが表示されます。

左側のリストからユーザーをクリック/ドラッグすることで、右側のアクセス許可リストにユーザーのアクセス許可を示すチェック ボックスの列を動的に追加/削除できるようにしたいと考えています。ユーザー権限列の数は、0 からユーザーの総数になります。チェックボックスは、基礎となるデータにバインドする必要があります。つまり、ユーザーのアクセス許可を更新します。

右側のアクセス許可リストを取得するには、ListView または DataGrid のどちらのコントロールを使用すればよいですか?

ListView を使用し、WPF MVVM のガイドとして次の回答を使用して添付プロパティを作成することで、何かが機能しています: GridViewColumn を ViewModel-Collection にバインドする方法は? ただし、これは許可ステータスのチェックボックスのみを true/false にレンダリングしません。CellDataTemplate を動的に追加してチェックボックスをレンダリングする方法を調べたところ、DataGrid を使用する必要があるかどうか疑問が生じました。

DataGrid を使用する場合、列の動的な追加はどのように機能しますか?

可能であれば、コードビハインドを最小限に抑えたいと考えています。

4

1 に答える 1

0

At first glance on your question, I thought a Datagrid would be a better choice. I'm a vb.net guy but I think the syntax would be very similar

To add columns at runtime the code behind looks like this

DataGridView1.Columns.Add("Column Name", "Column Heading")

You could always just do a google search on "Adding columns to a DataGrid at runtime in C#" and that should return a bunch of examples.

于 2013-03-15T15:56:45.253 に答える