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

[Solved] Hierarchy Grid - Need same Column width in Matertable and Detailtable

2 Answers 156 Views
Grid
This is a migrated thread and some comments may be shown as answers.
Kumar Ramasany
Top achievements
Rank 1
Kumar Ramasany asked on 04 Mar 2010, 06:49 AM
Hi, 
  

  I am using hierarchy grid. It's one master table two details table. I need to align same column width in this three table. I had set both column for header style and itemstyle width. But it not fixed. when i am click expand button the master table width is automatically changed.  Please check the code and Screen shot, any one know the result let me know.

<telerik:RadGrid ID="RadGrid1"   
    OnItemCreated="RadGrid1_ItemCreated"   
    OnItemCommand="RadGrid1_ItemCommand"   
    OnDetailTableDataBind="RadGrid1_DetailTableDataBind" 
    OnItemDataBound="RadGrid1_ItemDataBound"   
    OnPreRender="RadGrid1_PreRender"    
    OnDeleteCommand="RadGrid1_DeleteCommand"    
    OnNeedDataSource="RadGrid1_NeedDataSource" 
    ShowStatusBar="true"   
    AutoGenerateColumns="False" PageSize="3" AllowSorting="True" AllowMultiRowSelection="False" 
    AllowPaging="True" GridLines="None" 
    HeaderStyle-CssClass="GridHeader_Outlook" AlternatingItemStyle-BackColor="#EEEEEE" 
    SelectedItemStyle-CssClass="SelectedItem" BorderColor="#BEBEBE" 
    runat="server" > 
    <ClientSettings>    
        <ClientEvents OnColumnResizing="ResizeAllColumns" />      
    </ClientSettings>    
    <PagerStyle AlwaysVisible="true" Mode="NextPrevAndNumeric" /> 
    <SortingSettings  EnableSkinSortStyles="false" /> 
    <MasterTableView  Name="Master"   
        ClientDataKeyNames="ROOMID,TRANSLATEDCODE,ROOMTRANSLATEDID,ROOMNAME,ROOMSCORE,ROOMVALIDTILL" 
        DataKeyNames="ROOMNAME,ROOMID,LOCATIONID,TRANSLATEDCODE,ROOMTRANSLATEDID,ROOMSCORE,ROOMVALIDTILL" 
        AllowMultiColumnSorting="True"   
        Width="100%">   
        <DetailTables> 
            <telerik:GridTableView Width="100%" BorderColor="#BEBEBE"   
                runat="server" Name="Detail1" DataKeyNames="ZONENAME,TRANSLATEDCODE,ZONETRANSLATEDID, ZONEID,ROOMID,ZONESCORE,ZONEVALIDTILL" 
                ClientDataKeyNames="ZONENAME,ZONETRANSLATEDID,TRANSLATEDCODE, ZONEID,ROOMID,ZONESCORE,ZONEVALIDTILL" > 
                <PagerStyle Visible="false" /> 
                <ParentTableRelation> 
                    <telerik:GridRelationFields DetailKeyField="ROOMID" MasterKeyField="ROOMID" /> 
                </ParentTableRelation> 
                <DetailTables> 
                    <telerik:GridTableView  Width="100%" runat="server" BorderColor="#BEBEBE"   
                        Name="Detail2" DataKeyNames="ELEMENTNAME,TRANSLATEDCODE, ZONEID,ELEMENTID,ELEMENTTRANSLATEDID,ELEMENTSCORE,ELEMENTVALIDTILL" 
                        ClientDataKeyNames="ELEMENTNAME,TRANSLATEDCODE,ELEMENTTRANSLATEDID, ZONEID,ELEMENTID,ELEMENTSCORE,ELEMENTVALIDTILL">  
                       <ParentTableRelation> 
                            <telerik:GridRelationFields DetailKeyField="ZONEID" MasterKeyField="ZONEID" /> 
                       </ParentTableRelation> 
                       <PagerStyle Visible="false" /> 
                        <Columns> 
                            <telerik:GridBoundColumn HeaderText="ElementID" DataField="ELEMENTID" UniqueName="ELEMENTID"   
                                    SortExpression="ELEMENTID" ReadOnly="true" Visible="false">  
                            </telerik:GridBoundColumn> 
                            <telerik:GridBoundColumn HeaderText="Description" DataField="ELEMENTNAME" UniqueName="ELEMENTNAME"   
                                    SortExpression="ELEMENTNAME" ReadOnly="true">  
                            </telerik:GridBoundColumn> 
                              
                            <telerik:GridTemplateColumn> 
                                <HeaderTemplate> 
                                    <asp:Label ID="lblHeadElementRemarks" runat="server" Text="Remarks"></asp:Label> 
                                </HeaderTemplate> 
                                <ItemTemplate> 
                                    <asp:TextBox ID="radTxtRemarks" runat="server" ></asp:TextBox> 
                                </ItemTemplate> 
                                 <HeaderStyle Width="150px" /> 
                                <ItemStyle Width="150px" /> 
                            </telerik:GridTemplateColumn> 
                            <telerik:GridTemplateColumn ItemStyle-HorizontalAlign="Left" UniqueName="CbColumn" > 
                                <HeaderStyle HorizontalAlign="Center" /> 
                                <ItemTemplate > 
                                 
                                </ItemTemplate> 
                                 <HeaderStyle Width="150px" /> 
                                <ItemStyle Width="150px" /> 
                            </telerik:GridTemplateColumn> 
                              
                            <telerik:GridTemplateColumn > 
                                <HeaderStyle HorizontalAlign="Center"/>  
                                <HeaderTemplate> 
                                     <asp:Label ID="lblHeaderElementScore" Text="Score" runat="server"></asp:Label> 
                                </HeaderTemplate> 
                                <ItemTemplate> 
                                     <asp:Label ID="lblElementScore"  runat="server" Text="0"   ></asp:Label>%  
                                </ItemTemplate> 
                                 <HeaderStyle Width="40px" /> 
                                <ItemStyle Width="40px" /> 
                            </telerik:GridTemplateColumn> 
                        </Columns> 
                    </telerik:GridTableView> 
                </DetailTables> 
                <Columns> 
                    <telerik:GridBoundColumn HeaderText="ZoneID" DataField="ZONEID" UniqueName="ZONEID"   
                                    SortExpression="ZONEID" ReadOnly="true" Visible="false">  
                            </telerik:GridBoundColumn> 
                    <telerik:GridBoundColumn HeaderText="Description" DataField="ZONENAME" UniqueName="ZONENAME"   
                            SortExpression="ZONENAME" ReadOnly="true">  
                    </telerik:GridBoundColumn> 
                    <telerik:GridTemplateColumn> 
                        <HeaderTemplate> 
                            <asp:Label ID="lblHeadZoneRemarks" runat="server" Text="Remarks"></asp:Label> 
                        </HeaderTemplate> 
                        <ItemTemplate> 
                            <asp:Label ID="lblZoneRemarks" runat="server"></asp:Label> 
                        </ItemTemplate> 
                        <HeaderStyle Width="150px" /> 
                        <ItemStyle Width="150px" /> 
                    </telerik:GridTemplateColumn> 
                    <telerik:GridTemplateColumn> 
                        <HeaderTemplate> 
                            <asp:Label ID="lblHeadZoneRating" runat="server" Text="Rating"></asp:Label> 
                        </HeaderTemplate> 
                        <ItemTemplate> 
                            <asp:Label ID="lblZoneRating" runat="server"></asp:Label> 
                        </ItemTemplate> 
                        <HeaderStyle Width="150px" /> 
                        <ItemStyle Width="150px" /> 
                    </telerik:GridTemplateColumn> 
                    <telerik:GridTemplateColumn  UniqueName="HeaderZoneScore">  
                        <HeaderStyle HorizontalAlign="Center"/>  
                        <HeaderTemplate> 
                             <asp:Label ID="lblHeaderZoneScore" Text="Score" runat="server"></asp:Label> 
                        </HeaderTemplate> 
                        <ItemTemplate> 
                             <asp:Label ID="lblZonesScore" runat="server" Text="0"  ></asp:Label>%  
                        </ItemTemplate> 
                        <HeaderStyle Width="40px" /> 
                        <ItemStyle Width="40px" /> 
                    </telerik:GridTemplateColumn> 
                </Columns> 
            </telerik:GridTableView> 
        </DetailTables> 
        <Columns> 
            <telerik:GridBoundColumn HeaderText="RoomID" DataField="ROOMID" UniqueName="ROOMID"   
                                    SortExpression="ROOMID" ReadOnly="true" Visible="false">  
            </telerik:GridBoundColumn> 
            <telerik:GridBoundColumn HeaderText="Description" DataField="ROOMNAME" UniqueName="ROOMNAME"   
                    SortExpression="ROOMNAME" ReadOnly="true">  
      
            </telerik:GridBoundColumn> 
            <telerik:GridTemplateColumn> 
                <HeaderTemplate> 
                    <asp:Label ID="lblHeadRoomRemarks" runat="server" Text="Remarks"></asp:Label> 
                </HeaderTemplate> 
                <ItemTemplate> 
                    <asp:Label ID="lblRoomRemarks" runat="server"></asp:Label> 
                </ItemTemplate> 
                <HeaderStyle Width="150px" /> 
                <ItemStyle Width="150px" /> 
            </telerik:GridTemplateColumn> 
            <telerik:GridTemplateColumn> 
                <HeaderTemplate> 
                    <asp:Label ID="lblHeadRoomRating" runat="server" Text="Rating"></asp:Label> 
                </HeaderTemplate> 
                <ItemTemplate> 
                    <asp:Label ID="lblRoomRating" runat="server"></asp:Label> 
                </ItemTemplate> 
                <HeaderStyle Width="150px" /> 
                <ItemStyle Width="150px" /> 
            </telerik:GridTemplateColumn> 
             
            <telerik:GridTemplateColumn  UniqueName="HeaderRoomScore">  
                <HeaderStyle HorizontalAlign="Center"/>  
                <HeaderTemplate> 
                     <asp:Label ID="lblHeaderScore" Text="Score" runat="server"></asp:Label> 
                </HeaderTemplate> 
                <ItemTemplate> 
                    <asp:Label ID="lblRoomScore" Text="0"   runat="server"></asp:Label>%  
                </ItemTemplate> 
                <HeaderStyle Width="40px" /> 
                <ItemStyle Width="40px" /> 
            </telerik:GridTemplateColumn> 
        </Columns> 
    </MasterTableView> 
</telerik:RadGrid> 

2 Answers, 1 is accepted

Sort by
0
Princy
Top achievements
Rank 2
answered on 04 Mar 2010, 09:44 AM
Hi,

Please  set the TableLayout of the MasterTableView to Fixed . This should help resolve your design issue.

<MasterTableView TableLayout="Fixed"/>

Thanks,
Princy
0
Kumar Ramasany
Top achievements
Rank 1
answered on 04 Mar 2010, 10:30 AM
Hi Princy,
           Thanks for your help. Now it is working
Tags
Grid
Asked by
Kumar Ramasany
Top achievements
Rank 1
Answers by
Princy
Top achievements
Rank 2
Kumar Ramasany
Top achievements
Rank 1
Share this question
or