を使用してデータグリッドをバインドします
//fill datagrid
public DataTable GameData
{
get
{
DataSet ds = new DataSet();
FileStream fs = new FileStream(IMDB.WebPage.Class.Config.XMLPath,
FileMode.Open, FileAccess.Read);
StreamReader reader = new StreamReader(fs, Encoding.Default);
ds.ReadXml(reader);
fs.Close();
DataTable temp = ds.Tables[0];
return ds.Tables[0];
}
}
何らかの理由で、下部に空の行が表示されます。また、グリッド内の一部のボタンとチェックボックスをクリックすると、空の行が追加されることがあります。
どうしてこれなの?そして、これをどのようにブロックしますか?
DataGridでCanUserAddRows
がtrueに設定されていると思われます。追加するだけ
CanUserAddRows="false"
xAMLに。
次の属性でも機能します。
IsReadOnly="true"
IEditableCollectionView
を実装するバッキングコレクションがCanAddNew
メソッドからtrueを返す場合、DataGridはそれがあなたのしたいことであると想定します。
ここに概要があります: WPF DataGridの編集機能の概要
ソースコードを使用してオンザフライでDataGridを作成している場合...
DataGrid grid = new DataGrid();
grid.CanUserAddRows = false;
//...
grid.AutoGenerateColumns = false;
grid.Margin = new Thickness(10,20,10,10);
grid.VerticalAlignment = VerticalAlignment.Top;
grid.ItemsSource = //... and so on