C# 응용 프로그램에 DataGridView가 있습니다. 디자이너를 사용하여 AlternatingRowsDefaultCellStyle
과 DGV 자체에 DefaultCellStyle
속성을 설정했습니다. 두 스타일 모두 패딩 값이 0, 0, 5, 0
입니다. DataGridView 작업 추가 기능의 Edit Columns
메뉴에서 DGV 열에 대한 사용자 지정 스타일을 설정하지 않았습니다.단일 DataGridView 열의 모든 셀 패딩 변경
DGV에는 각 행에 대해 작은 그래프를 그리는 이미지 열이 하나의 열입니다. 이 열의 모든 셀에서 패딩을 제거하여 그래프의 끝에 공백이있는 셀에 패딩이 적용되지 않도록하고 싶습니다.
각 항목에서 필자는 열에있는 셀에서 패딩을 제거하지 않았고 예외를 throw하지 않았습니다.
// first attempt
// taken from http://social.msdn.microsoft.com/Forums/eu/winforms/thread/a9227253-8bb4-429a-a700-8a3a255afe4d
deviceGrid.Columns["GProduction"].DefaultCellStyle.Padding = new Padding(0);
// second attempt
DataGridViewCellStyle style = deviceGrid.Columns["Graph"].DefaultCellStyle; // also tried Clone()
style.Padding = new Padding(0);
deviceGrid.Columns["GProduction"].DefaultCellStyle = style;
// third attempt
DataGridViewColumn col = deviceGrid.Columns["Graph"];
DataGridViewImageCell icell = new DataGridViewImageCell();
icell.Style.Padding = new Padding(0);
col.CellTemplate = icell;
나는 의심 어쩌면 자체가 내가 열 설정하려고 기본 셀 스타일을 무시하지만, 그런 경우가 있다면, 제가이 문제를 방지하려면 어떻게해야 않는 DataGridView에에서 DefaultCellStyle
패딩?
해결책 :
후 다음 jmh_gr에 의해 그래서 나는 DGV 속성에서 패딩을 제거하고, 적용했다 내가 문제가있는 DataGridView 자체에 대한 DefaultCellStyle
가 셀의 최근 상속되는 것을 알았다 제공 나는 패딩을 원하지 않는 모든 칼럼에.
과 함께 약간의 품질 시간을 보내 DataGridView에 헤더 셀에 패딩을 추가하는 방법이다 [윈도우에서 셀 스타일 Forms DataGridView 컨트롤 (http://msdn.microsoft.com/en-us/library/1yef90x0.aspx), 스타일 상속을 자세히 설명합니다. 모든 코드와 GUI 세트 스타일을 보지 않고 스타일 스택이 무엇인지 정확히 아는 것은 어렵습니다. –
@jmh_gr DGV DefaultCellStyle LAST에서 스타일을 상속 받았다는 사실을 지적 해 주셔서 감사합니다. 패딩을 설정하는 곳이므로 열 또는 셀 자체에 설정된 0 값을 재정의합니다. 해결 방법은 패딩이 필요한 셀에 5px 패딩을 적용하고 기본 스타일에 패딩을 0 개 남겨 두는 것입니다. – drew010
[해결]을 제목에 넣고 질문을 편집하는 대신 해답을 답변으로 게시하십시오. 며칠 후에 다시 돌아와 받아 들일 수 있습니다. –