데이터 그리드를 사용하여 바인딩합니다.
//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];
}
}
어떤 이유로 바닥에 빈 줄이 생깁니다. 때로는 그리드의 일부 버튼과 확인란을 클릭 한 후 더 많은 빈 행이 추가됩니다.
왜 이런거야? 그리고 이것을 어떻게 차단합니까?
답변
CanUserAddRowsDataGrid에 대해 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
답변
OP는 빈 행을 제거하는 방법을 묻었지만 제목은 구체적이지 않으며이 기사는 빈 행을 추가하는 방법을 찾으려고하면서 검색에 나타납니다. 빈 행이 나타나 려면 기본 생성자가 있어야 CanUserAddRows="True"하지만 ItemsSource필요합니다 public MyClass () { }.
답변
