Using current release of the controls-
Grid within a div with a label beneath, both contained within a Webusercontrol.
Grid config:
Within the webusercontrol's resize event, I set the height of the label to fill the remainder of the .ClientHeight, which requires that I know the current height of the grid. Only the grid's .scrollHeight is returning a value and it varies even though the height is the same.
Within the resize event I use the following jscript:
Half the time the grid's .scrollHeight value is correct (187px for 5 rows), half the time its returning 271px, even though its the same 5 rows and the same height.
What should I be using to obtain the grid's height during the usercontrol's resize event?
Grid within a div with a label beneath, both contained within a Webusercontrol.
Grid config:
<telerik:RadGrid ID="gridMain" runat="server" AllowPaging="True" |
GridLines="None" Skin="Office2007" AutoGenerateColumns="False" |
AllowSorting="True" DataSourceID="dsPMail" PageSize="5"> |
<HeaderContextMenu EnableTheming="True"> |
<CollapseAnimation Type="OutQuint" Duration="200"></CollapseAnimation> |
</HeaderContextMenu> |
<PagerStyle Mode="NumericPages" /> |
<MasterTableView DataKeyNames="RowID,SentBy,DateSent,Body" |
ClientDataKeyNames="RowID, Body" DataSourceID="dsPMail"> |
<RowIndicatorColumn> |
<HeaderStyle Width="20px"></HeaderStyle> |
</RowIndicatorColumn> |
<Columns> |
<telerik:GridBoundColumn DataField="Body" Display="False" UniqueName="Body" ReadOnly="True" Visible="False"> |
</telerik:GridBoundColumn> |
<telerik:GridBoundColumn UniqueName="DateSent" DataField="DateSent" |
HeaderText="Date Sent" ReadOnly="True" DataType="System.String" DataFormatString="{0:MM/dd/yyyy hh:mm tt}"> |
<HeaderStyle Width="135em" /> |
</telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="SentBy" HeaderText="Sent By" |
ReadOnly="True" UniqueName="SentBy"> |
<HeaderStyle Width="120em" /> |
</telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="Subject" HeaderText="Subject" |
ReadOnly="True" UniqueName="Subject"> |
</telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="RowID" UniqueName="RowID" |
DataType="System.Int32" Visible="False"> |
</telerik:GridBoundColumn> |
</Columns> |
</MasterTableView> |
<ClientSettings> |
<Selecting AllowRowSelect="True" /> |
<ClientEvents OnCommand="OnCommand" |
OnRowSelected="OnRowClicked" /> |
</ClientSettings> |
<FilterMenu EnableTheming="True"> |
<CollapseAnimation Type="OutQuint" Duration="200"></CollapseAnimation> |
</FilterMenu> |
</telerik:RadGrid> |
Within the webusercontrol's resize event, I set the height of the label to fill the remainder of the .ClientHeight, which requires that I know the current height of the grid. Only the grid's .scrollHeight is returning a value and it varies even though the height is the same.
Within the resize event I use the following jscript:
var gridControl = document.getElementById("<%= gridMain.ClientID %>"); |
var txtControl = document.getElementById("<%= txtMail.ClientID %>"); |
txtControl.style.height = (document.documentElement.clientHeight - gridControl.scrollHeight) + "px"; |
Half the time the grid's .scrollHeight value is correct (187px for 5 rows), half the time its returning 271px, even though its the same 5 rows and the same height.
What should I be using to obtain the grid's height during the usercontrol's resize event?