Показать сообщение отдельно
Старый 04.05.2012, 15:39
andrew2312 вне форума Посмотреть профиль Отправить личное сообщение для andrew2312 Найти все сообщения от andrew2312
  № 1  
Ответить с цитированием
andrew2312

Регистрация: Apr 2012
Сообщений: 32
По умолчанию Rotate HeaderText in DataGrid

Здравствуйте!
Есть DataGrid. В заголовках столбцов длинные надписи.
1)Кто-нибудь работал со свойством rotation?
Такой вопрос когда-то обсуждался http://tech.groups.yahoo.com/group/f.../message/62230
Но вот у меня не работает.
2)Или кто-нибудь может подсказать, можно ли headerText писать в несколько строк. headerHeight мы можем сделать большим, но как разбить на несколько строк его содержимое?
Заранее спасибо.
Код:
<fx:Style>
	@font-face {
		src:url("assets/verdanab.ttf");
		fontFamily: "MyFont";
		fontWeight: bold;
	}
	.myStyle1{
		fontFamily:"MyFont"; 
		fontSize:12pt;
	}
</fx:Style>
<mx:DataGrid id="myGrid2" x="91" y="526" height="100" dataProvider="{initDG2}" editable="true"
				variableRowHeight="true" maxHeight="150" headerHeight="60">
	<mx:columns>
		<mx:DataGridColumn dataField="Contact" width="150" headerText="Длинная надпись"/>
		<mx:DataGridColumn dataField="Phone" headerText="Длинная надпись">
			<mx:headerRenderer>
				<fx:Component>
					<mx:VBox horizontalAlign="center">
						<mx:Text text="{this.headerText.data}" styleName=".myStyle1" rotation="90"/>    
					</mx:VBox>
				</fx:Component>
			</mx:headerRenderer>
		</mx:DataGridColumn>
		<mx:DataGridColumn dataField="City"/>
		<mx:DataGridColumn dataField="Company" editable="false"/>
	</mx:columns>
</mx:DataGrid>
Добавлено через 31 час 1 минуту
На второй вопрос ответ нашёл.
Код:
<mx:DataGrid x="10" y="294">
		<mx:columns>
			<mx:DataGridColumn headerText="Column 1" dataField="col1" headerWordWrap="true"/>
			<mx:DataGridColumn headerText="Column 2" dataField="col2" headerWordWrap="true"/>
			<mx:DataGridColumn headerText="Column 3" dataField="col3" headerWordWrap="true"/>
		</mx:columns>
	</mx:DataGrid>
Либо
Код AS1/AS2:
var dg:DataGrid = new DataGrid();   
dg.width = 150;   
dg.height = 300;                   
var dgColumn:DataGridColumn = new DataGridColumn();   
dgColumn.headerWordWrap = true;   
dgColumn.headerText = "test test test test test test test";   
dgColumn.dataField = "test";                                   
dg.columns = [dgColumn]
Но первый вопрос открыт.