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?