私のWPFアプリケーションでは、コードビハインドから動的にDatagridを作成します。ただし、これに似た行ヘッダーにチェックボックスが付いたデータグリッドが必要です。
XMLからそれを行う方法は知っていますが、csコードからは知りません。この状況に対処する方法はありますか?ps。私のコードは非常に大きいのでここに入れることはできませんが、さらに情報が必要な場合は、下にコメントを入れてください。乾杯
このようなものはどうですか:
var dg = new DataGrid();
var dataTemplate = new DataTemplate();
var gridFactory = new FrameworkElementFactory(typeof(Grid));
var checkboxFactory = new FrameworkElementFactory(typeof(CheckBox));
checkboxFactory.SetBinding(CheckBox.IsCheckedProperty, new Binding("IsSelected") { RelativeSource = new RelativeSource(RelativeSourceMode.FindAncestor,typeof(DataGridRow),1)});
gridFactory.AppendChild(checkboxFactory);
dataTemplate.VisualTree = gridFactory;
dg.RowHeaderTemplate = dataTemplate;
うまくいけば、あまり労力をかけずにこれをコードに組み込むことができるはずです。おそらく、DataGrid
名前を「dg」から変更するだけで済みます。