This is a migrated thread and some comments may be shown as answers.

Grid frozen clomns width issue with frozen columns

1 Answer 92 Views
Grid
This is a migrated thread and some comments may be shown as answers.
Champu123
Top achievements
Rank 1
Champu123 asked on 22 Jan 2011, 07:54 AM
HI all ..

i am having some issue in the frozen columns with rad grid .The frozen columns work fine.But when i open it in edit odd there is certain issue in thewidth its not lking fine.Here is My markup of page plwase help


<%@ Page Language="C#" MasterPageFile="~/Template/List.Master" AutoEventWireup="true"
    CodeBehind="List.aspx.cs" Inherits="CLEARTrackerCNI.UI.PActivity.List" %>

<%@ Register TagPrefix="telerik" Namespace="Telerik.Web.UI" Assembly="Telerik.Web.UI" %>
<%@ Register TagPrefix="cni" TagName="Filters" Src="~/Controls/Filters.ascx" %>
<%@ Register TagPrefix="cni" TagName="Export" Src="~/Controls/Export.ascx" %>
<%@ Register TagPrefix="cni" TagName="CustomView" Src="~/Controls/CustomView.ascx" %>
<asp:Content ID="Content1" ContentPlaceHolderID="Work" runat="server">


ok some how i have resolved above issue now when i set the height for grid to 100% it get shrink to 1 row and fixed the height result in chocking the scroll bar i am attacing my screnn shot with this i want to know is it possible to synchronize browaser vertical scroll with rad grid vertical scroll. or how to fix the vertical scroll issue.

 

    <table width="100%" cellpadding="0" cellspacing="0" class="main" style="table-layout: fixed;">
        <tr>
            <td class="pgtitle">
                Activity Manager : Activities List
            </td>
        </tr>
        <tr>
            <td class="filler10">
            </td>
        </tr>
        <tr>
            <td class="pl10">
                View Assigned To:&nbsp;<telerik:RadComboBox ID="uxAssignedToGroup" runat="server"
                    AutoPostBack="true" MarkFirstMatch="true" Width="250px" OnSelectedIndexChanged="uxAssignedToGroup_SelectedIndexChanged"
                    EnableLoadOnDemand="false" TabIndex="1" />
            </td>
        </tr>
        <tr>
            <td height="10px">
            </td>
        </tr>
        <tr>
            <td height="10px">
                <table width="100%" cellpadding="1" cellspacing="0">
                    <tr style="vertical-align: middle">
                        <td style="vertical-align: middle; padding-bottom: 7px;">
                            <asp:CheckBoxList ID="uxChkList" runat="server" RepeatDirection="Horizontal" OnSelectedIndexChanged="uxChkList_SelectedIndexChanged"
                                AutoPostBack="true">
                                <asp:ListItem Text="In-Complete" Value="0" Selected="True" />
                                <asp:ListItem Text="Complete" Value="4" />
                            </asp:CheckBoxList>
                        </td>
                        <td class="pl10" style="vertical-align: middle">
                            <cni:Filters runat="server" id="uxFilters" />
                        </td>
                        <td>
                            <cni:Export ID="uxExport" runat="server" />
                        </td>
                        <td style="vertical-align: middle">
                            <cni:CustomView ID="uxCustomView" runat="server" />
                        </td>
                    </tr>
                </table>
            </td>
        </tr>
        <tr>
            <td height="10px">
                &nbsp;
            </td>
        </tr>
        <tr runat="server" id="trGrid">
            <td>
                <telerik:RadGrid ID="uxRadGrid" AutoGenerateColumns="False" AllowFilteringByColumn="true"
                    OnNeedDataSource="uxRadGrid_NeedDataSource" OnItemDataBound="uxRadGrid_ItemDataBound"
                    AllowPaging="true" Width="100%" Height="368px" PageSize="100" AllowSorting="True"
                    runat="server" EnableEmbeddedSkins="false" OnItemCommand="uxRadGrid_ItemCommand"
                    OnItemCreated="uxRadGrid_ItemCreated" AllowMultiRowEdit="true">
                    <pagerstyle mode="NextPrevAndNumeric" alwaysvisible="true" />
                    <groupingsettings casesensitive="false" />
                    <clientsettings><Scrolling AllowScroll="True" SaveScrollPosition="true" UseStaticHeaders="true"  FrozenColumnsCount="3"></Scrolling>
                                                   
        </clientsettings>
                    <mastertableview overridedatasourcecontrolsorting="true" editmode="InPlace" commanditemdisplay="TopAndBottom"
                        tablelayout="Fixed" allowfilteringbycolumn="true" enableheadercontextmenu="true" Width="100%">
            <CommandItemTemplate>
                <asp:LinkButton ID="btnEditSelected" runat="server" CommandName="EditAllActvt" Visible='<%#uxRadGrid.EditIndexes.Count == 0%>' Text="Edit All" />
                <asp:LinkButton ID="btnUpdate" runat="server" CommandName="UpdateAllActvt" Text="Update All" Visible='<%#uxRadGrid.EditIndexes.Count > 0%>'  ValidationGroup="validateEstimates" />
            </CommandItemTemplate>
            <Columns>
                <telerik:GridBoundColumn Groupable="false" HeaderText="#" DataField="RowNum" UniqueName="RowNum" SortExpression="RowNum"
                    HeaderStyle-Width="75px" AutoPostBackOnFilter="true" AllowFiltering="false" ReadOnly="True" />
                <telerik:GridTemplateColumn Groupable="false" HeaderText="Activity Name" ReadOnly="True" UniqueName="ActivityName"
                    SortExpression="ActivityName" DataField="ActivityName" AutoPostBackOnFilter="true" CurrentFilterFunction="Contains"
                    HeaderStyle-Width="110px" FilterControlWidth="60%" ShowFilterIcon="true" AndCurrentFilterFunction="Contains">
                    <ItemTemplate>
                        <asp:LinkButton ID="lnkName" runat="server" Text='<%#Eval("ActivityName")%>' />
                        <asp:Label ID="uxId" runat="server" Text='<%#Eval("ProjActID")%>' Visible="false" />
                        <asp:Label ID="uxProjID" runat="server" Text='<%#Eval("ProjectID")%>' Visible="false" />
                    </ItemTemplate>
                </telerik:GridTemplateColumn>
                <%--To allow them to be visible on pdf/doc--%>
                <telerik:GridTemplateColumn HeaderText="Activity Name" UniqueName="AltActivityName" Visible="false">
                    <ItemTemplate><asp:Label ID="lblName" runat="server" Text='<%#Eval("ActivityName")%>' /></ItemTemplate>
                </telerik:GridTemplateColumn>
                <telerik:GridBoundColumn HeaderText="Group" DataField="ActivityGroupName" ReadOnly="True" UniqueName="ActivityGroupName"
                    SortExpression="ActivityGroupName" AutoPostBackOnFilter="true" CurrentFilterFunction="Contains"
                    HeaderStyle-Width="105px" FilterControlWidth="60%" ShowFilterIcon="true" AndCurrentFilterFunction="Contains" />
                <telerik:GridTemplateColumn AutoPostBackOnFilter="true" CurrentFilterFunction="Contains" ShowFilterIcon="true"
                    AndCurrentFilterFunction="Contains" UniqueName="AssignedToUser" SortExpression="AssignedToUser" DataField="AssignedToUser"
                    HeaderStyle-Width="100px" FilterControlWidth="60%" HeaderText="Assigned To" ReadOnly="false">
                    <ItemTemplate><asp:Label runat="server" ID="lbAssignedToUser" Text='<%#Eval("AssignedToUser")%>' /></ItemTemplate>
                    <EditItemTemplate>
                        <asp:RadioButton runat="server" ID="rdoAssignedType" GroupName="AssignedType" AutoPostBack="true" OnCheckedChanged="rdoAssignedType_SelectedIndexChanged" Text="User"/>
                        <asp:RadioButton runat="server" ID="rdoAssignedTypeGroup" GroupName="AssignedType" AutoPostBack="true" OnCheckedChanged="rdoAssignedType_SelectedIndexChanged" Text="User Group"/>
                        <asp:RadioButton runat="server" ID="rdoAssignedUserTags" GroupName="AssignedType" AutoPostBack="true" OnCheckedChanged="rdoAssignedType_SelectedIndexChanged" Text="User Tags"/>
                        <br />
                        <asp:DropDownList ID="cmbAssigned" runat="server" Visible="false"
                            DataTextField="FullName"
                            DataValueField="UserID" Width="">
                        </asp:DropDownList>
                        
                        <asp:DropDownList ID="cmbAssignedGroup" runat="server" Visible="false"
                            DataTextField="GroupName"
                            DataValueField="GroupID" Width="">
                        </asp:DropDownList>
                        
                        <asp:DropDownList ID="cmbAssignedUserTags" runat="server" Visible="false"
                             DataTextField="CodeText"
                             DataValueField="CodeValue" Width="">
                        </asp:DropDownList>  
                                        
                        <asp:Label runat="server" ID="lbAssignedToUser" Visible="false" Text='<%#Eval("AssignedToUser") %>' />
                        <asp:Label runat="server" ID="lbAssignedToUserID" Visible="false" Text='<%#Eval("AssignedToID") %>' />
                        <asp:Label runat="server" ID="lbAssignedToType" Visible="false" Text='<%#Eval("AssignedToType") %>' />
                    </EditItemTemplate>
                    <FooterTemplate>
                        <asp:RadioButton  runat="server" ID="rdoAssignedType" GroupName="AssignedType" AutoPostBack="true" OnCheckedChanged="rdoAssignedType_SelectedIndexChanged" Text="User"  EnableLoadOnDemand="true" Checked="true"/>
                        <asp:RadioButton runat="server" ID="rdoAssignedTypeGroup" GroupName="AssignedType" AutoPostBack="true" OnCheckedChanged="rdoAssignedType_SelectedIndexChanged" EnableLoadOnDemand="true" Text="User Group"/>
                        <asp:RadioButton runat="server" ID="rdoAssignedUserTags" GroupName="AssignedType" AutoPostBack="true" OnCheckedChanged="rdoAssignedType_SelectedIndexChanged" Text="User Tags"/>
                        <br />
                        <asp:DropDownList ID="cmbAssigned" runat="server" Visible="false"
                            DataTextField="FullName"
                            DataValueField="UserID" Width="">
                        </asp:DropDownList>
                        
                         <asp:DropDownList ID="cmbAssignedGroup" runat="server" Visible="false"
                            DataTextField="GroupName"
                            DataValueField="GroupID" Width="">
                        </asp:DropDownList>
                        
                         <asp:DropDownList ID="cmbAssignedUserTags" runat="server" Visible="false"
                             DataTextField="CodeText"
                             DataValueField="CodeValue" Width="">
                        </asp:DropDownList>  
                        
                        <br /><asp:LinkButton runat="server" ID="uxUpdateAll" Text="Update all Assigned To" CommandName="setAssigned" />
                    </FooterTemplate>
                </telerik:GridTemplateColumn>
                <telerik:GridTemplateColumn HeaderText="Starts on" DataField="StartDate" UniqueName="StartDate" SortExpression="StartDateRaw"
                    HeaderStyle-Width="70px" FilterControlWidth="60%" AutoPostBackOnFilter="true" CurrentFilterFunction="Contains"
                    ShowFilterIcon="true" AndCurrentFilterFunction="Contains">
                    <EditItemTemplate>
                        <asp:TextBox ID="uxStartDate" runat="server" Width="90%" Text='<%#Convert.ToDateTime(Eval("StartDate")).ToString("MM/dd/yyyy")%>'/>
                        <asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" ControlToValidate="uxStartDate" ErrorMessage="Enter a valid start date in format mm/dd/yyyy" ToolTip="Enter a valid start date in format mm/dd/yyyy" ValidationExpression="^(((0?[1-9]|1[012])/(0?[1-9]|1\d|2[0-8])|(0?[13456789]|1[012])/(29|30)|(0?[13578]|1[02])/31)/(19|[2-9]\d)\d{2}|0?2/29/((19|[2-9]\d)(0[48]|[2468][048]|[13579][26])|(([2468][048]|[3579][26])00)))$" Text="<img src='/App_Themes/Default/Images/error.gif' />" ValidationGroup="validateEstimates" />
                    
                    </EditItemTemplate>
                    <ItemTemplate><asp:Label ID="dtLabelSD" runat="server" Text='<%#Eval("StartDate")%>' /></ItemTemplate>
                    <FooterTemplate>
                        <asp:TextBox ID="uxStartDateAll" runat="server" Width="90%" Text=""/>
                        <asp:RegularExpressionValidator ID="RegularExpressionValidator2" runat="server" ControlToValidate="uxStartDateAll" ErrorMessage="Enter a valid start date in format mm/dd/yyyy" ToolTip="Enter a valid start date in format mm/dd/yyyy" ValidationExpression="^(((0?[1-9]|1[012])/(0?[1-9]|1\d|2[0-8])|(0?[13456789]|1[012])/(29|30)|(0?[13578]|1[02])/31)/(19|[2-9]\d)\d{2}|0?2/29/((19|[2-9]\d)(0[48]|[2468][048]|[13579][26])|(([2468][048]|[3579][26])00)))$" Text="<img src='/App_Themes/Default/Images/error.gif' />" ValidationGroup="validateEstimates" />
                    
                        <br /><asp:LinkButton runat="server" ID="uxUpdateAllSD" Text="Update all Start On" CommandName="setStartDateOn" ValidationGroup="StartDate" />
                        <asp:RequiredFieldValidator ID="reqAssign" runat="server" ControlToValidate="uxStartDateAll" ValidationGroup="StartDate" SetFocusOnError="true" ErrorMessage="Start Date is required." Text="<img src='/App_Themes/Default/Images/error.gif' />" ToolTip="Start Date is required." />
                    </FooterTemplate>
                </telerik:GridTemplateColumn>
                <telerik:GridTemplateColumn HeaderText="Due on" DataField="DueOn" UniqueName="DueOn" SortExpression="DueOnRaw"
                    HeaderStyle-Width="70px" FilterControlWidth="60%" AutoPostBackOnFilter="true" CurrentFilterFunction="Contains"
                    ShowFilterIcon="true" AndCurrentFilterFunction="Contains">
                    <EditItemTemplate>
                        <asp:TextBox ID="uxDueOn" runat="server" Width="90%" Text='<%#Convert.ToDateTime(Eval("DueOn")).ToString("MM/dd/yyyy")%>'/>
                        <asp:RegularExpressionValidator ID="RegularExpressionValidator3" runat="server" ControlToValidate="uxDueOn" ErrorMessage="Enter a valid due date in format mm/dd/yyyy" ToolTip="Enter a valid due date in format mm/dd/yyyy" ValidationExpression="^(((0?[1-9]|1[012])/(0?[1-9]|1\d|2[0-8])|(0?[13456789]|1[012])/(29|30)|(0?[13578]|1[02])/31)/(19|[2-9]\d)\d{2}|0?2/29/((19|[2-9]\d)(0[48]|[2468][048]|[13579][26])|(([2468][048]|[3579][26])00)))$" Text="<img src='/App_Themes/Default/Images/error.gif' />" ValidationGroup="validateEstimates" />
                    
                    </EditItemTemplate>
                    <ItemTemplate><asp:Label ID="dtLabelDueOn" runat="server" Text='<%# Eval("DueOn") %>' /></ItemTemplate>
                    <FooterTemplate>
                        <asp:TextBox ID="uxDueOnAll" runat="server" Width="90%" Text=""/>
                        <asp:RegularExpressionValidator ID="RegularExpressionValidator4" runat="server" ControlToValidate="uxDueOnAll" ErrorMessage="Enter a valid due date in format mm/dd/yyyy" ToolTip="Enter a valid due date in format mm/dd/yyyy" ValidationExpression="^(((0?[1-9]|1[012])/(0?[1-9]|1\d|2[0-8])|(0?[13456789]|1[012])/(29|30)|(0?[13578]|1[02])/31)/(19|[2-9]\d)\d{2}|0?2/29/((19|[2-9]\d)(0[48]|[2468][048]|[13579][26])|(([2468][048]|[3579][26])00)))$" Text="<img src='/App_Themes/Default/Images/error.gif' />" ValidationGroup="validateEstimates" />
                    
                        <br /><asp:LinkButton runat="server" ID="uxUpdateAllDO" Text="Update all Due On" CommandName="setDueOn" ValidationGroup="DO" />
                        <asp:RequiredFieldValidator ID="reqDO" runat="server" ControlToValidate="uxDueOnAll" ValidationGroup="DO" SetFocusOnError="true" ErrorMessage="Due On is required." Text="<img src='/App_Themes/Default/Images/error.gif' />" ToolTip="Due On is required." />
                    </FooterTemplate>
                </telerik:GridTemplateColumn>
                <telerik:GridTemplateColumn HeaderText="Status" DataField="StatusName" UniqueName="StatusName" SortExpression="StatusName"
                    HeaderStyle-Width="90px" FilterControlWidth="65%" AutoPostBackOnFilter="true" CurrentFilterFunction="Contains"
                    ShowFilterIcon="true" AndCurrentFilterFunction="Contains">
                    <EditItemTemplate>
                    <asp:DropDownList ID="uxStatusName" runat="server"
                            DataSourceID="getStatusSource"
                            DataTextField="CodeValue"
                            DataValueField="CodeID" Width="">
                        </asp:DropDownList>
                    </EditItemTemplate>
                    <ItemTemplate><asp:Label ID="dtLabelStatus" runat="server" Text='<%# Eval("StatusName") %>' /></ItemTemplate>
                    <FooterTemplate>
                        <asp:DropDownList ID="uxStatusName" runat="server"
                            DataSourceID="getStatusSource"
                            DataTextField="CodeValue"
                            DataValueField="CodeID" Width="">
                        </asp:DropDownList>
                        <br /><asp:LinkButton runat="server" ID="uxUpdateAllSN" Text="Update all Status" CommandName="setStatus" />
                    </FooterTemplate>
                </telerik:GridTemplateColumn>
                <telerik:GridBoundColumn HeaderText="Priority" DataField="Priority" ReadOnly="True" UniqueName="Priority"
                    SortExpression="Priority" AutoPostBackOnFilter="true" CurrentFilterFunction="Contains" ShowFilterIcon="true"
                    HeaderStyle-Width="70px" FilterControlWidth="40%" AndCurrentFilterFunction="Contains" />
                <telerik:GridBoundColumn HeaderText="Project #" DataField="ProjectCode" ReadOnly="True" UniqueName="ProjectCode"
                    SortExpression="ProjectCode" AutoPostBackOnFilter="true" CurrentFilterFunction="Contains" ShowFilterIcon="true"
                    HeaderStyle-Width="100px" FilterControlWidth="60%" AndCurrentFilterFunction="Contains" />
                <telerik:GridBoundColumn HeaderText="Capture Date" DataField="CaptureDate" ReadOnly="True" UniqueName="CaptureDate"
                    SortExpression="CaptureDateRaw" AutoPostBackOnFilter="true" CurrentFilterFunction="Contains" ShowFilterIcon="true"
                    HeaderStyle-Width="100px" FilterControlWidth="60%" AndCurrentFilterFunction="Contains" />
                <telerik:GridBoundColumn HeaderText="Savings Bucket" DataField="Bucket" ReadOnly="True" UniqueName="Bucket"
                    SortExpression="Bucket" AutoPostBackOnFilter="true" CurrentFilterFunction="Contains" ShowFilterIcon="true"
                    HeaderStyle-Width="100px" FilterControlWidth="60%" AndCurrentFilterFunction="Contains" />
                <telerik:GridBoundColumn HeaderText="Primary Estimate" DataField="Primary" ReadOnly="True" UniqueName="Primary"
                    SortExpression="Primary" AutoPostBackOnFilter="true" CurrentFilterFunction="Contains" ShowFilterIcon="true"
                    HeaderStyle-Width="100px" FilterControlWidth="60%" AndCurrentFilterFunction="Contains" />
                <telerik:GridBoundColumn HeaderText="Secondary Estimate" DataField="Secondary" ReadOnly="True" UniqueName="Secondary"
                    SortExpression="Secondary" AutoPostBackOnFilter="true" CurrentFilterFunction="Contains" ShowFilterIcon="true"
                    HeaderStyle-Width="100px" FilterControlWidth="60%" AndCurrentFilterFunction="Contains" />
                <telerik:GridBoundColumn HeaderText="Tertiary Estimate" DataField="Tertiary"  ReadOnly="True" UniqueName="Tertiary"
                    SortExpression="Tertiary" AutoPostBackOnFilter="true" CurrentFilterFunction="Contains" ShowFilterIcon="true"
                    HeaderStyle-Width="140px" FilterControlWidth="60%" AndCurrentFilterFunction="Contains" />
                <telerik:GridTemplateColumn Groupable="false" UniqueName="Action" Visible="True" ReadOnly="True"
                    HeaderStyle-Width="100px" HeaderText="Action" AllowFiltering="false">
                    <ItemTemplate><asp:LinkButton ID="lnkAction" runat="server" Text="Complete" CommandName="CompleteActivity" /></ItemTemplate>
                </telerik:GridTemplateColumn>
                <telerik:GridTemplateColumn HeaderText="" AllowFiltering="false" HeaderStyle-Width="100px" Visible="true">
                    <ItemTemplate><asp:LinkButton ID="lnkSave_1" Text="Save" runat="server" Enabled="false"/></ItemTemplate>
                    <EditItemTemplate><asp:LinkButton ID="lnkSave" Text="Save" runat="server" CommandName="SaveRecord" Enabled="true"/></EditItemTemplate>
                </telerik:GridTemplateColumn>
            </Columns>
        </mastertableview>
       
                </telerik:RadGrid>
            </td>
        </tr>
        <tr runat="server" id="trMessage" visible="false">
            <td class="pl10">
                <asp:Label runat="server" ID="uxMsg" />
            </td>
        </tr>
        <asp:ObjectDataSource ID="getStatusSource" SelectMethod="GetStatus" runat="server"
            TypeName="CLEARTrackerCNI.UI.PActivity.List"></asp:ObjectDataSource>
    </table>
</asp:Content>

any help will be appriceated.

1 Answer, 1 is accepted

Sort by
0
Tsvetina
Telerik team
answered on 26 Jan 2011, 04:20 PM
Hi,

I am not sure if I understand exactly what problem you encounter, so please, correct me if I am wrong and explain how you expect the grid to look.

If you want to not have a scrollbar and the grid to be high enough to accommodate all the items on the page, you can replace the Height setting from your RadGrid declaration with ClientSettings-Scrolling-ScrollHeight="" (empty string).

Best wishes,
Tsvetina
the Telerik team
Browse the vast support resources we have to jump start your development with RadControls for ASP.NET AJAX. See how to integrate our AJAX controls seamlessly in SharePoint 2007/2010 visiting our common SharePoint portal.
Tags
Grid
Asked by
Champu123
Top achievements
Rank 1
Answers by
Tsvetina
Telerik team
Share this question
or