グリッドビューであるリストビューにいくつかの項目を追加したいと考えています。バインド オプションを実装せずにコードで実行したいのですが、何らかのセルのセットに値を追加するだけです。
それがWPFの方法ではないことは知っていますが、これを緊急に行う必要があり、探している答えが見つからないようです。
マルチバインド、コンバーター、通常のバインディングを調べましたが、今のところ必要な答えが得られません。
それは可能ですか?
もしそうなら、どうすればできますか?
DataGrid
の代わりにを使用できますListView
か? 次にAutoGenerateColumns
、true に設定できます (デフォルトでも true です)。
<DataGrid x:Name="myDataGrid" AutoGenerateColumns="True"/>
次に、コード ビハインドで次のようにします。
myDataGrid.Items = new List<MyDataType>();
foreach(var item in itemsToAdd){
myDataGrid.Items.Add(item);
}
またはそれより短い:
myDataGrid.ItemsSource = myListOfItems;
コード ビハインドでコントロールを読み込むかどうかにこだわらないでください。私は、両方の操作が混在する主要な Silverlight プロジェクトに携わってきました。
public MainWindow()
{
InitializeComponent();
lvPrimary.ItemsSource = new List<string> { "Alpha", "Beta", "Gamma" };
}
Xaml を使用すると、次のようになります。
<Window x:Class="WPFStackOverflow.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Grid>
<ListView Name="lvPrimary" Width="200"/>
</Grid>
</Window>