Hi
I am trying to prevent empty rows with “No Child records to display” from showing the expand/colapse image. Using the code from here: http://www.telerik.com/help/aspnet-ajax/grid-hide-expand-collapse-images-when-no-records.html removed ALL of the images, even rows that did have child records to display. Could you please look at my code and see if I am missing something.
Files are attached.
Thank you.
Mike
I am trying to prevent empty rows with “No Child records to display” from showing the expand/colapse image. Using the code from here: http://www.telerik.com/help/aspnet-ajax/grid-hide-expand-collapse-images-when-no-records.html removed ALL of the images, even rows that did have child records to display. Could you please look at my code and see if I am missing something.
Files are attached.
<
telerik:radscriptmanager
id
=
"RadScriptManager1"
runat
=
"server"
>
</
telerik:radscriptmanager
>
<
telerik:radgrid
id
=
"RadGrid1G"
runat
=
"server"
cellspacing
=
"0"
datasourceid
=
"SqlDS1_General"
gridlines
=
"None"
autogeneratecolumns
=
"False"
enableembeddedskins
=
"False"
imagespath
=
"~/LM2_Vista_Skin/Images"
skin
=
"LM2_Vista_Skin"
showheader
=
"False"
width
=
"800px"
onprerender
=
"RadGrid1G_PreRender"
>
<
ClientSettings
>
<
ClientEvents
OnRowMouseOver
=
"RowMouseOver"
OnRowMouseOut
=
"RowMouseOut"
/>
</
ClientSettings
>
<
MasterTableView
DataSourceID
=
"SqlDS1_General"
DataKeyNames
=
"Model_ID"
HierarchyDefaultExpanded
=
"True"
>
<
DetailTables
>
<
telerik:GridTableView
runat
=
"server"
NoDetailRecordsText
=
""
DataKeyNames
=
"DocType_ID"
DataSourceID
=
"SqlDS2_General"
>
<
DetailTables
>
<
telerik:GridTableView
runat
=
"server"
DataSourceID
=
"SqlDS3_General"
>
<
ParentTableRelation
>
<
telerik:GridRelationFields
DetailKeyField
=
"DocType_ID"
MasterKeyField
=
"DocType_ID"
/>
</
ParentTableRelation
>
<
CommandItemSettings
AddNewRecordImageUrl
=
"~/LM2_Vista_Skin/Images\AddRecord.gif"
ExportToCsvImageUrl
=
"~/LM2_Vista_Skin/Images\ExportToCsv.gif"
ExportToExcelImageUrl
=
"~/LM2_Vista_Skin/Images\ExportToExcel.gif"
ExportToPdfImageUrl
=
"~/LM2_Vista_Skin/Images\ExportToPdf.gif"
ExportToPdfText
=
"Export to PDF"
ExportToWordImageUrl
=
"~/LM2_Vista_Skin/Images\ExportToWord.gif"
RefreshImageUrl
=
"~/LM2_Vista_Skin/Images\Refresh.gif"
/>
<
RowIndicatorColumn
FilterControlAltText
=
"Filter RowIndicator column"
FilterImageUrl
=
"~/LM2_Vista_Skin/Images\Filter.gif"
SortAscImageUrl
=
"~/LM2_Vista_Skin/Images\SortAsc.gif"
SortDescImageUrl
=
"~/LM2_Vista_Skin/Images\SortDesc.gif"
>
<
HeaderStyle
Width
=
"20px"
/>
</
RowIndicatorColumn
>
<
ExpandCollapseColumn
CollapseImageUrl
=
"~/LM2_Vista_Skin/Images\SingleMinus.gif"
ExpandImageUrl
=
"~/LM2_Vista_Skin/Images\SinglePlus.gif"
FilterControlAltText
=
"Filter ExpandColumn column"
FilterImageUrl
=
"~/LM2_Vista_Skin/Images\Filter.gif"
SortAscImageUrl
=
"~/LM2_Vista_Skin/Images\SortAsc.gif"
SortDescImageUrl
=
"~/LM2_Vista_Skin/Images\SortDesc.gif"
>
<
HeaderStyle
Width
=
"20px"
/>
</
ExpandCollapseColumn
>
<
Columns
>
<
telerik:GridTemplateColumn
DataField
=
"Link_Name"
FilterControlAltText
=
"Filter ddLink_Name_General column"
FilterImageUrl
=
"~/LM2_Vista_Skin/Images\Filter.gif"
ReadOnly
=
"True"
Reorderable
=
"False"
Resizable
=
"False"
ShowSortIcon
=
"False"
SortAscImageUrl
=
"~/LM2_Vista_Skin/Images\SortAsc.gif"
SortDescImageUrl
=
"~/LM2_Vista_Skin/Images\SortDesc.gif"
UniqueName
=
"ddLink_Name_General"
>
<
ItemTemplate
>
<
table
cellspacing
=
"1"
cellpadding
=
"1"
>
<
tr
>
<
td
style
=
"width:500px; text-align:left;"
>
<
asp:Label
ID
=
"ddTitles_General"
runat
=
"server"
Text='<%# Eval("Link_Name") %>' CssClass="dCol1"></
asp:Label
>
</
td
>
</
tr
>
</
table
>
</
ItemTemplate
>
</
telerik:GridTemplateColumn
>
</
Columns
>
<
EditFormSettings
>
<
EditColumn
CancelImageUrl
=
"~/LM2_Vista_Skin/Images\Cancel.gif"
EditImageUrl
=
"~/LM2_Vista_Skin/Images\Edit.gif"
FilterControlAltText
=
"Filter EditCommandColumn column"
FilterImageUrl
=
"~/LM2_Vista_Skin/Images\Filter.gif"
InsertImageUrl
=
"~/LM2_Vista_Skin/Images\Update.gif"
SortAscImageUrl
=
"~/LM2_Vista_Skin/Images\SortAsc.gif"
SortDescImageUrl
=
"~/LM2_Vista_Skin/Images\SortDesc.gif"
UpdateImageUrl
=
"~/LM2_Vista_Skin/Images\Update.gif"
>
</
EditColumn
>
</
EditFormSettings
>
<
PagerStyle
FirstPageImageUrl
=
"~/LM2_Vista_Skin/Images\PagingFirst.gif"
LastPageImageUrl
=
"~/LM2_Vista_Skin/Images\PagingLast.gif"
NextPageImageUrl
=
"~/LM2_Vista_Skin/Images\PagingNext.gif"
PrevPageImageUrl
=
"~/LM2_Vista_Skin/Images\PagingPrev.gif"
/>
</
telerik:GridTableView
>
</
DetailTables
>
<
ParentTableRelation
>
<
telerik:GridRelationFields
DetailKeyField
=
"Model_ID"
MasterKeyField
=
"Model_ID"
/>
</
ParentTableRelation
>
<
CommandItemSettings
AddNewRecordImageUrl
=
"~/LM2_Vista_Skin/Images\AddRecord.gif"
ExportToCsvImageUrl
=
"~/LM2_Vista_Skin/Images\ExportToCsv.gif"
ExportToExcelImageUrl
=
"~/LM2_Vista_Skin/Images\ExportToExcel.gif"
ExportToPdfImageUrl
=
"~/LM2_Vista_Skin/Images\ExportToPdf.gif"
ExportToPdfText
=
"Export to PDF"
ExportToWordImageUrl
=
"~/LM2_Vista_Skin/Images\ExportToWord.gif"
RefreshImageUrl
=
"~/LM2_Vista_Skin/Images\Refresh.gif"
/>
<
RowIndicatorColumn
FilterControlAltText
=
"Filter RowIndicator column"
FilterImageUrl
=
"~/LM2_Vista_Skin/Images\Filter.gif"
SortAscImageUrl
=
"~/LM2_Vista_Skin/Images\SortAsc.gif"
SortDescImageUrl
=
"~/LM2_Vista_Skin/Images\SortDesc.gif"
>
<
HeaderStyle
Width
=
"20px"
/>
</
RowIndicatorColumn
>
<
ExpandCollapseColumn
CollapseImageUrl
=
"~/LM2_Vista_Skin/Images\SingleMinus.gif"
ExpandImageUrl
=
"~/LM2_Vista_Skin/Images\SinglePlus.gif"
FilterControlAltText
=
"Filter ExpandColumn column"
FilterImageUrl
=
"~/LM2_Vista_Skin/Images\Filter.gif"
SortAscImageUrl
=
"~/LM2_Vista_Skin/Images\SortAsc.gif"
SortDescImageUrl
=
"~/LM2_Vista_Skin/Images\SortDesc.gif"
Visible
=
"True"
>
<
HeaderStyle
Width
=
"20px"
/>
</
ExpandCollapseColumn
>
<
ItemStyle
CssClass
=
"detailLevel_1"
/>
<
AlternatingItemStyle
CssClass
=
"detailLevel_1_alt"
/>
<
Columns
>
<
telerik:GridTemplateColumn
DataField
=
"Model_ID"
UniqueName
=
"dModel_ID_General"
FilterImageUrl
=
"~/LM2_Vista_Skin/Images/Filter.gif"
SortAscImageUrl
=
"~/LM2_Vista_Skin/Images/SortAsc.gif"
SortDescImageUrl
=
"~/LM2_Vista_Skin/Images/SortDesc.gif"
ShowFilterIcon
=
"False"
ReadOnly
=
"True"
Reorderable
=
"False"
Resizable
=
"False"
ShowSortIcon
=
"False"
FilterControlAltText
=
"Filter dModel_ID_General column"
>
<
ItemTemplate
>
<
table
cellspacing
=
"1"
cellpadding
=
"1"
>
<
tr
>
<
td
style
=
"width:540px; text-align:left;"
>
<
asp:Label
ID
=
"dTitles_General"
runat
=
"server"
Text='<%# Eval("Link_Name") %>' CssClass="dCol1"></
asp:Label
>
<
asp:Label
ID
=
"DocType_NameLabel"
runat
=
"server"
Text='<%# Eval("DocType_Name") %>' CssClass="dCol1" Visible="False"></
asp:Label
>
<
asp:Label
ID
=
"Model_IDLabel"
runat
=
"server"
Text='<%# Eval("Model_ID") %>' CssClass="dCol1" Visible="False"></
asp:Label
>
</
td
>
</
tr
>
</
table
>
</
ItemTemplate
>
<
ItemStyle
CssClass
=
"dCol1"
/>
</
telerik:GridTemplateColumn
>
<
telerik:GridTemplateColumn
UniqueName
=
"dLangsLinks__General"
FilterControlAltText
=
"Filter dLangsLinks__General column"
>
<
ItemTemplate
>
<
table
id
=
"LLinkTable"
cellspacing
=
"0"
cellpadding
=
"0"
style
=
"width:152px;"
>
<
tr
>
<
td
class
=
"LLinks_td"
>
<
a
href='<%#Eval("Link_Path_en") %>'>en</
a
>
</
td
>
<
td
class
=
"LLinks_td"
>
<
a
class
=
"LLinks"
href
=
"<%#Eval("
Link_Path_de") %>">de</
a
>
</
td
>
<
td
class
=
"LLinks_td"
>
<
a
class
=
"LLinks"
href
=
"<%#Eval("
Link_Path_es") %>">es</
a
>
</
td
>
<
td
class
=
"LLinks_td"
>
<
a
class
=
"LLinks"
href
=
"<%#Eval("
Link_Path_cn") %>">cn</
a
>
</
td
>
<
td
class
=
"LLinks_td"
>
<
a
class
=
"LLinks"
href
=
"<%#Eval("
Link_Path_cn") %>">fr</
a
>
</
td
>
<
td
class
=
"LLinks_td"
>
</
td
>
<
td
class
=
"LLinks_td"
>
</
td
>
</
tr
>
</
table
>
</
ItemTemplate
>
</
telerik:GridTemplateColumn
>
</
Columns
>
<
EditFormSettings
>
<
EditColumn
CancelImageUrl
=
"~/LM2_Vista_Skin/Images\Cancel.gif"
EditImageUrl
=
"~/LM2_Vista_Skin/Images\Edit.gif"
FilterControlAltText
=
"Filter EditCommandColumn column"
FilterImageUrl
=
"~/LM2_Vista_Skin/Images\Filter.gif"
InsertImageUrl
=
"~/LM2_Vista_Skin/Images\Update.gif"
SortAscImageUrl
=
"~/LM2_Vista_Skin/Images\SortAsc.gif"
SortDescImageUrl
=
"~/LM2_Vista_Skin/Images\SortDesc.gif"
UpdateImageUrl
=
"~/LM2_Vista_Skin/Images\Update.gif"
>
</
EditColumn
>
</
EditFormSettings
>
<
PagerStyle
FirstPageImageUrl
=
"~/LM2_Vista_Skin/Images\PagingFirst.gif"
LastPageImageUrl
=
"~/LM2_Vista_Skin/Images\PagingLast.gif"
NextPageImageUrl
=
"~/LM2_Vista_Skin/Images\PagingNext.gif"
PrevPageImageUrl
=
"~/LM2_Vista_Skin/Images\PagingPrev.gif"
/>
</
telerik:GridTableView
>
</
DetailTables
>
<
CommandItemSettings
ExportToPdfText
=
"Export to PDF"
AddNewRecordImageUrl
=
"~/LM2_Vista_Skin/Images\AddRecord.gif"
ExportToCsvImageUrl
=
"~/LM2_Vista_Skin/Images\ExportToCsv.gif"
ExportToExcelImageUrl
=
"~/LM2_Vista_Skin/Images\ExportToExcel.gif"
ExportToPdfImageUrl
=
"~/LM2_Vista_Skin/Images\ExportToPdf.gif"
ExportToWordImageUrl
=
"~/LM2_Vista_Skin/Images\ExportToWord.gif"
RefreshImageUrl
=
"~/LM2_Vista_Skin/Images\Refresh.gif"
></
CommandItemSettings
>
<
RowIndicatorColumn
FilterControlAltText
=
"Filter RowIndicator column"
FilterImageUrl
=
"~/LM2_Vista_Skin/Images\Filter.gif"
SortAscImageUrl
=
"~/LM2_Vista_Skin/Images\SortAsc.gif"
SortDescImageUrl
=
"~/LM2_Vista_Skin/Images\SortDesc.gif"
>
</
RowIndicatorColumn
>
<
ExpandCollapseColumn
FilterControlAltText
=
"Filter ExpandColumn column"
CollapseImageUrl
=
"~/LM2_Vista_Skin/Images\SingleMinus.gif"
ExpandImageUrl
=
"~/LM2_Vista_Skin/Images\SinglePlus.gif"
FilterImageUrl
=
"~/LM2_Vista_Skin/Images\Filter.gif"
SortAscImageUrl
=
"~/LM2_Vista_Skin/Images\SortAsc.gif"
SortDescImageUrl
=
"~/LM2_Vista_Skin/Images\SortDesc.gif"
Visible
=
"True"
>
</
ExpandCollapseColumn
>
<
Columns
>
<
telerik:GridBoundColumn
DataField
=
"Model_ID"
FilterControlAltText
=
"Filter mModel_ID_General column"
SortExpression
=
"Model_ID"
UniqueName
=
"mModel_ID_General"
FilterImageUrl
=
"~/LM2_Vista_Skin/Images\Filter.gif"
SortAscImageUrl
=
"~/LM2_Vista_Skin/Images\SortAsc.gif"
SortDescImageUrl
=
"~/LM2_Vista_Skin/Images\SortDesc.gif"
AllowFiltering
=
"False"
AllowSorting
=
"False"
ReadOnly
=
"True"
Reorderable
=
"False"
Resizable
=
"False"
ShowSortIcon
=
"False"
Display
=
"True"
>
<
ItemStyle
BackColor
=
"#E0E0E0"
BorderStyle
=
"None"
Font-Bold
=
"True"
Font-Names
=
"Verdana"
ForeColor
=
"#003399"
Width
=
"520px"
Font-Size
=
"12px"
/>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"LanguageChoice"
FilterControlAltText
=
"Filter LanguageChoice column"
FilterImageUrl
=
"~/LM2_Vista_Skin/Images\Filter.gif"
SortAscImageUrl
=
"~/LM2_Vista_Skin/Images\SortAsc.gif"
SortDescImageUrl
=
"~/LM2_Vista_Skin/Images\SortDesc.gif"
SortExpression
=
"LanguageChoice"
UniqueName
=
"mLanguageChoice_General"
AllowFiltering
=
"False"
AllowSorting
=
"False"
ReadOnly
=
"True"
Reorderable
=
"False"
Resizable
=
"False"
ShowSortIcon
=
"False"
Display
=
"True"
>
<
ItemStyle
BackColor
=
"#E0E0E0"
BorderStyle
=
"None"
Font-Bold
=
"True"
Font-Names
=
"Verdana"
ForeColor
=
"#003399"
Width
=
"162px"
Font-Size
=
"13px"
/>
</
telerik:GridBoundColumn
>
</
Columns
>
<
EditFormSettings
EditColumn-ShowFilterIcon
=
"False"
EditColumn-ShowSortIcon
=
"False"
EditColumn-Reorderable
=
"False"
EditColumn-Display
=
"False"
EditColumn-Resizable
=
"False"
EditColumn-Visible
=
"False"
>
<
EditColumn
FilterControlAltText
=
"Filter EditCommandColumn column"
CancelImageUrl
=
"~/LM2_Vista_Skin/Images\Cancel.gif"
EditImageUrl
=
"~/LM2_Vista_Skin/Images\Edit.gif"
FilterImageUrl
=
"~/LM2_Vista_Skin/Images\Filter.gif"
InsertImageUrl
=
"~/LM2_Vista_Skin/Images\Update.gif"
SortAscImageUrl
=
"~/LM2_Vista_Skin/Images\SortAsc.gif"
SortDescImageUrl
=
"~/LM2_Vista_Skin/Images\SortDesc.gif"
UpdateImageUrl
=
"~/LM2_Vista_Skin/Images\Update.gif"
>
</
EditColumn
>
</
EditFormSettings
>
<
ItemStyle
Font-Bold
=
"False"
Font-Names
=
"Rod"
/>
<
PagerStyle
FirstPageImageUrl
=
"~/LM2_Vista_Skin/Images\PagingFirst.gif"
LastPageImageUrl
=
"~/LM2_Vista_Skin/Images\PagingLast.gif"
NextPageImageUrl
=
"~/LM2_Vista_Skin/Images\PagingNext.gif"
PrevPageImageUrl
=
"~/LM2_Vista_Skin/Images\PagingPrev.gif"
/>
</
MasterTableView
>
<
PagerStyle
FirstPageImageUrl
=
"~/LM2_Vista_Skin/Images\PagingFirst.gif"
LastPageImageUrl
=
"~/LM2_Vista_Skin/Images\PagingLast.gif"
NextPageImageUrl
=
"~/LM2_Vista_Skin/Images\PagingNext.gif"
PrevPageImageUrl
=
"~/LM2_Vista_Skin/Images\PagingPrev.gif"
/>
<
FilterMenu
EnableImageSprites
=
"False"
>
</
FilterMenu
>
<
HeaderContextMenu
CssClass
=
"GridContextMenu GridContextMenu_Default"
>
</
HeaderContextMenu
>
</
telerik:radgrid
>
</
td
>
</
tr
>
<
tr
>
<
td
style
=
"width: 100%;"
>
</
td
>
</
tr
>
</
table
>
<
asp:SqlDataSource
ID
=
"SqlDS1_General"
runat
=
"server"
ConnectionString="<%$ ConnectionStrings:LM_Docs %>" SelectCommand="SELECT m.Model_ID, m.Cat_ID, m.InActive, md.Model_Lang_ID_Group, md.Model_Desc_Eng, md.LanguageChoice
FROM Models as m INNER JOIN Model_Descriptions as md ON m.Model_ID = md.Model_ID
WHERE m.Cat_ID = 1 and m.InActive = @InActive and md.Model_Lang_ID_Group = @Model_Lang_ID_Group
ORDER BY m.Model_ID">
<
SelectParameters
>
<
asp:Parameter
DefaultValue
=
"false"
Name
=
"InActive"
/>
<
asp:Parameter
DefaultValue
=
"1"
Name
=
"Model_Lang_ID_Group"
/>
</
SelectParameters
>
</
asp:SqlDataSource
>
<
asp:SqlDataSource
ID
=
"SqlDS2_General"
runat
=
"server"
ConnectionString="<%$ ConnectionStrings:LM_Docs %>" SelectCommand="spRadGrid_General_Level2" SelectCommandType="StoredProcedure">
<
SelectParameters
>
<
asp:SessionParameter
Name
=
"Model_ID"
SessionField
=
"Model_ID"
Type
=
"String"
/>
</
SelectParameters
>
</
asp:SqlDataSource
>
<
asp:SqlDataSource
ID
=
"SqlDS3_General"
runat
=
"server"
ConnectionString="<%$ ConnectionStrings:LM_Docs %>" SelectCommand="spRadGrid_General_Level3" SelectCommandType="StoredProcedure">
<
SelectParameters
>
<
asp:SessionParameter
DefaultValue
=
""
Name
=
"DocType_ID"
SessionField
=
"DocType_ID"
Type
=
"Int32"
/>
</
SelectParameters
>
</
asp:SqlDataSource
>
</
form
>
using System;
using System.Collections.Generic;
using System.Text;
using System.Net;
using System.Net.Mail;
using System.Net.Mime;
using System.IO;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Telerik.Web.UI;
using System.Text.RegularExpressions;
public partial class LM2general : BasePage
{
protected void RadGrid1G_PreRender(object sender, EventArgs e)
{
HideExpandColumnRecursive(RadGrid1G.MasterTableView);
}
public void HideExpandColumnRecursive(GridTableView tableView)
{
GridItem[] nestedViewItems = tableView.GetItems(GridItemType.NestedView);
foreach (GridNestedViewItem nestedViewItem in nestedViewItems)
{
foreach (GridTableView nestedView in nestedViewItem.NestedTableViews)
{
if (nestedView.Items.Count == 0)
{
TableCell cell = nestedView.ParentItem["ExpandColumn"];
cell.Controls[0].Visible = false;
cell.Text = " ";
nestedViewItem.Visible = false;
}
if (nestedView.HasDetailTables)
{
HideExpandColumnRecursive(nestedView);
}
}
}
}
}
Thank you.
Mike