2009-07-24 3 views
0

Dojox 1.3 Datagrid의 높이를 Excel과 같은 한 줄로 고정하려고합니다. 현재 기능은 한 줄에 들어갈 수있는 것보다 많은 데이터를 사용할 수있는 경우 행의 높이를 자동으로 늘리는 것입니다.Dojox Datagrid 행 높이를 한 줄로 설정하는 방법

쉬운 방법이 있나요? 이것이 스프레드 시트의 기본 동작이라는 점을 고려하여 DataGrid의 기능에 내장 된 것처럼 보입니다. 도움

+0

현재 DataGrid에서 단일 행의 크기를 조정할 수있는 방법은 없습니다. – seth

+0

jfkelley의 답변을 참조하십시오. 한 가지 방법은 길을 스타일링하는 것입니다. 격자 셀 자체에이 기능이 내장되어있는 경우 테이블 셀을 가로 지르는 언급 된 기능을 사용하여 자신 만의 그리드 클래스를 파생시킬 수 있습니다 (doren.query 이후에 dojo.query 사용). '축소/확장'버튼을 쉽게 만들 수 있습니다. – mschr

답변

0

당신은 높이를 설정할 수 있지만 폭을 조정할 수 있습니다에 대한

감사합니다. 한 줄에 문자열을 맞추려면 셀이 일반적으로 얼마나 넓어야하는지 잘 알고 있다면 한 줄에 들어갈 수있는 행의 수를 최대화하기 위해 문자열을 한 줄에 맞출 수 있습니다. 이 도움이

<table //dojo grid properties> 
    <thead> 
     <tr> 
      <th width="90px" field="fieldName" ...> 
       Field Name 
      </th> 
      ... 
     </tr> 
    </thead> 
</table> 

희망.

1

나는 그렇게 생각합니다.
클래스에서 .dojoxGridCellContent이 추가 : 여기

내가 실험을했습니다 무엇

공백 : 파라미터 nowrap; 오버플로 : 숨김;

내 "Squeeze/Expand"기능의 경우 약간의 기능을 사용하여 클래스 속성을 동적으로 변경 한 다음 그리드를 다시 페인트합니다.

필자는 수직 비주얼 스캔 (필요에 따라 셀 내용 줄이기)을 용이하게하기 위해 행을 1 행 "높이"로 낮추고 (Excel과 HTML 모두에서) 행을 크런치 할 수 있어야한다는 확고한 신념을 갖고 있습니다. 특정 행에있는 셀의 전체 내용을보기 위해 다시 확장 할 수 있습니다.

주어진 셀에 가변적 인 텍스트가있는 경우 주어진 셀의 모든 가능한 텍스트에 맞게 열의 크기를 수동으로 조정하는 것은 대단한 해결책입니다. 생산성 앱의 경우 비 기능성 공백이 적입니다.

이 유용한 작업을 수행하기 위해 Dojo에 내장 된 방법이 있었으면 좋겠다. (다년생 크로스 브라우저 조건부 타원도 해결한다.)

+0

실제로 , CSS의 특수성 규칙을 이기기 위해 ".dojoxGridContent"가 아니라 ".claro .dojoxGridContent"를 설정했습니다. 그리드를 설정할 때 dojoxGridContent div 스타일을 지정하는 방법이있을 수 있지만 그게 무엇인지는 아직 알지 못합니다. 그렇지 않으면 위대한 작품! – jfkelley

+0

자, 여기 있습니다. 그리드를 렌더링하기 직전에 레이아웃 구조를 살펴보고 cellStyles = "white-space : nowrap; overflow : hidden; height : 1em"을 설정했습니다. 높이를 추가하면 셀에 br 객체가있는 경우에도 축소 할 수 있습니다. – jfkelley

1

해킹을 찾았습니다! 열 포맷으로

사용이 :

function(obj){ 
    return "<div style='height:15px;text-overflow:ellipsis'>"+obj+"</div>" 
} 

이것은 단지 해킹 내가 행 선택에 약간의 문제를보고 있어요. 그러나 어쨌든, 이것이 당신들을 도울 수 있기를 바랍니다.

관련 문제