Hi there,
I check the display-property of the columns of a RadGrid on PreRender, but it isn't actual.
If I Hide/Show another Column or sort a column, the PreRender Function gives the correct display-property.
Here my code:
<%
@
Page
Language
="VB"
AutoEventWireup
="false"
CodeBehind
="Default.aspx.vb"
Inherits
="TelerikWebAppHideUnhideColBug._Default"
%>
<%
@
Register
Assembly
="Telerik.Web.UI"
Namespace
="Telerik.Web.UI"
TagPrefix
="telerik"
%>
<!
DOCTYPE
html
PUBLIC
"-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html
xmlns
="http://www.w3.org/1999/xhtml">
<
head
id
="Head1"
runat
="server">
<
title
></
title
>
</
head
>
<
body
>
<
form
id
="form1"
runat
="server">
<
script
type
="text/javascript">
function
RadGridCSC_ColumnHidden(sender, args) {
$find(
"<%= RadAjaxManager1.ClientID %>"
).ajaxRequest(
"ColumnHidden"
);
}
function
RadGridCSC_ColumnShown(sender, args) {
$find(
"<%= RadAjaxManager1.ClientID %>"
).ajaxRequest(
"ColumnShown"
);
}
function
RadGridCSC_ColumnRezised(sender, args) {
$find(
"<%= RadAjaxManager1.ClientID %>"
).ajaxRequest(
"ColumnRezised"
);
}
</
script
>
<
telerik
:
RadAjaxManager
ID
="RadAjaxManager1"
runat
="server">
</
telerik
:
RadAjaxManager
>
<
telerik
:
RadScriptManager
ID
="RadScriptManager1"
runat
="server"></
telerik
:
RadScriptManager
>
<
div
>
<
telerik
:
RadGrid
ID
="RadGrid1"
runat
="server"
AllowFilteringByColumn
="True"
AllowPaging
="True"
PageSize
="50"
Width
="100%"
Height
="650"
AllowSorting
="True"
CellSpacing
="0"
EnableHeaderContextMenu
="true"
EnableHeaderContextFilterMenu
="true">
<
GroupingSettings
CaseSensitive
="false"></
GroupingSettings
>
<
MasterTableView
AutoGenerateColumns
="false"
AllowFilteringByColumn
="True"
CommandItemDisplay
="Top"
width
="100%"
ClientDataKeyNames
="ProductID">
<
PagerStyle
AlwaysVisible
="true"
Mode
="NextPrevAndNumeric"
/>
<
Columns
>
<
telerik
:
GridBoundColumn
DataField
="ProductID"
Visible
="true"
FilterControlWidth
="60%"
HeaderStyle-Width
="80"
ItemStyle-Width
="60"
HeaderText
="ProductID"
UniqueName
="Version2"
ColumnGroupName
="SoftwareInformation"
ItemStyle-HorizontalAlign
="Left"
HeaderStyle-HorizontalAlign
="Left"
/>
<
telerik
:
GridBoundColumn
DataField
="ProductName"
Visible
="true"
FilterControlWidth
="80%"
HeaderStyle-Width
="200"
ItemStyle-Width
="200"
HeaderText
="Product Name"
UniqueName
="ProductName"
ColumnGroupName
="SoftwareInformation"
ItemStyle-HorizontalAlign
="Left"
HeaderStyle-HorizontalAlign
="Left"
/>
<
telerik
:
GridBoundColumn
DataField
="UnitPrice"
Visible
="true"
DataType
="System.String"
FilterListOptions
="VaryByDataType"
FilterControlWidth
="80%"
HeaderStyle-Width
="270"
ItemStyle-Width
="270"
HeaderText
="UnitPrice"
UniqueName
="UnitPrice"
ColumnGroupName
="SoftwareInformation"
ItemStyle-HorizontalAlign
="Left"
HeaderStyle-HorizontalAlign
="Left"/>
<
telerik
:
GridBoundColumn
DataField
="ReorderLevel"
Visible
="true"
FilterControlWidth
="60%"
HeaderStyle-Width
="80"
ItemStyle-Width
="60"
HeaderText
="ReorderLevel"
UniqueName
="ReorderLevel"
ColumnGroupName
="SoftwareInformation"
ItemStyle-HorizontalAlign
="Left"
HeaderStyle-HorizontalAlign
="Left"
/>
<
telerik
:
GridBoundColumn
DataField
="Discontinued"
Visible
="true"
FilterControlWidth
="80%"
HeaderStyle-Width
="200"
ItemStyle-Width
="200"
HeaderText
="Discontinued"
UniqueName
="Discontinued"
ColumnGroupName
="SoftwareInformation"
ItemStyle-HorizontalAlign
="Left"
HeaderStyle-HorizontalAlign
="Left"
/>
</
Columns
>
</
MasterTableView
>
 
<
ClientSettings
AllowColumnsReorder
="true"
ReorderColumnsOnClient
="false">
<
DataBinding
Location
="http://demos.kendoui.com/service/Northwind.svc"
ResponseType
="JSONP">
<
DataService
TableName
="Products"
Type
="OData"
/>
</
DataBinding
>
<
Scrolling
AllowScroll
="true"
UseStaticHeaders
="true"
ScrollHeight
="300px"
/>
<
ClientEvents
OnColumnShowing
="RadGridCSC_ColumnShown"
OnColumnHidden
="RadGridCSC_ColumnHidden"
/>
</
ClientSettings
>
</
telerik
:
RadGrid
>
</
div
>
</
form
>
</
body
>
</​
html
>
​
Imports
Telerik.Web.UI
Partial
Class
_Default
Inherits
System.Web.UI.
Page
Private
Sub
RadGrid1_PreRender(sender
As
Object
, e
As
System.
EventArgs
)
Handles
RadGrid1.PreRender
Dim
col
As
Telerik.Web.UI.
GridBoundColumn
col = RadGrid1.Columns.FindByUniqueName(
"Version2"
)
Debug
.Print(col.UniqueName +
":"
+ col.di.Display.ToString)
End
Sub
End
Class​
​​​​​​​
If I toogle the hide/show a column the Output are:
Version2:True
Version2:False
Version2:False
Version2:False
Version2:False
Version2:False
How can I get the actual display of a Column?
Thanks
Thomas