0
에서 테이블 I (일부 좋은 dll을 할 수있다?) 빌드 동적 RTF
어떤 좋은 방법이 빌드 동적 테이블 (테이블의 알 수없는 컴파일 시간 수, 행 병합 세포 등) 원하는 작업을위한 rtf 형식을 따르는 하위 수준 태그 쓰기 외에 rtf?에서 테이블 I (일부 좋은 dll을 할 수있다?) 빌드 동적 RTF
어떤 좋은 방법이 빌드 동적 테이블 (테이블의 알 수없는 컴파일 시간 수, 행 병합 세포 등) 원하는 작업을위한 rtf 형식을 따르는 하위 수준 태그 쓰기 외에 rtf?컨트롤 단어가 가장 힘든 부분이므로 RTF에서 테이블을 만드는 것이 어렵지 않습니다. 나는 C# WPF에서 그들과 함께 일 해왔다. RTF 테이블의 트릭은 각 행이 나머지 테이블과 독립적이라는 것입니다. 따라서 Row 1은 Row 2가 동일한 테이블의 일부인지, vis를 알지 못합니다.
다음 코드는 지정된 수의 행/열에 대한 테이블을 만듭니다. 프로그래밍 방식으로 셀을 병합하려면 병합 할 셀을 추적하고 하나의 행 셀 루프를 덜 실행해야합니다.
private String GetTableRTF(int numRows, int numColumns)
{
StringBuilder rtfTableString = new StringBuilder();
// For each row, construct the rtf version of a row
for (int i = 0; i < numRows; i++)
{
// Start the row, autofits it to the page and gives it a black border by default
rtfTableString.Append(@"{\trowd\trautofit1");
rtfTableString.Append(@"\trbrdrt\brdrs\brdrw15\brdrcf11"); // Top border
rtfTableString.Append(@"\trbrdrl\brdrs\brdrw15\brdrcf11"); // Left border
rtfTableString.Append(@"\trbrdrb\brdrs\brdrw15\brdrcf11"); // Bottom border
rtfTableString.Append(@"\trbrdrr\brdrs\brdrw15\brdrcf11"); // Right border
rtfTableString.Append(@"\trbrdrh\brdrs\brdrw15\brdrcf11"); // Cell Horizontal border
rtfTableString.Append(@"\trbrdrv\brdrs\brdrw15\brdrcf11"); // Cell Vertical border
for (int z = 0; z < numColumns; z++)
{
// Create the cells for the table
rtfTableString.Append(@"{\intbl \cell}");
}
//finish the row
rtfTableString.Append(@"\row}");
}
return rtfTableString.ToString();
}
이렇게하면 창에 자동 맞춤되고 기본 검은 색 테두리가있는 기본 테이블이 제공됩니다. 더 이상의 디자인 조정은 당신에게 달린 것입니다.