telerik:GridDateTimeColumn FilterControlWidth="60px" AllowFiltering="true" AutoPostBackOnFilter="false" CurrentFilterFunction="Contains" HeaderStyle-HorizontalAlign="Center" DataField="DateTime" HeaderText="Date" SortExpression="DateTime" ShowFilterIcon="true" UniqueName="DateTime" PickerType="DatePicker" DataFormatString="{0:g}" DataType="System.DateTime"> <HeaderStyle Width="100px" HorizontalAlign="center"></HeaderStyle> <ItemStyle HorizontalAlign="center" Width="100px"></ItemStyle> </telerik:GridDateTimeColumn><telerik:GridDateTimeColumn FilterControlWidth="60px" AllowFiltering="true" AutoPostBackOnFilter="false" CurrentFilterFunction="Contains" HeaderStyle-HorizontalAlign="Center" DataField="DateTime" HeaderText="Date" SortExpression="DateTime" ShowFilterIcon="true" UniqueName="DateTime" PickerType="DatePicker" DataFormatString="{0:g}" DataType="System.DateTime"> <HeaderStyle Width="100px" HorizontalAlign="center"></HeaderStyle> <ItemStyle HorizontalAlign="center" Width="100px"></ItemStyle> </telerik:GridDateTimeColumn>Protected Sub grdShiftObservation_OnItemCommand(ByVal sender As Object, ByVal e As Telerik.Web.UI.GridCommandEventArgs) Handles grdShiftObservation.ItemCommand If e.CommandName = RadGrid.FilterCommandName Then Dim filterPair As Pair = DirectCast(e.CommandArgument, Pair) Select Case filterPair.Second.ToString() Case "DateTime" Dim filterOption As String = CType(e.CommandArgument, Pair).First Dim filterItem As GridFilteringItem = CType(e.Item, GridFilteringItem) Dim currentPattern As String = CType(filterItem(CType(e.CommandArgument, Pair).Second).Controls(0), RadDatePicker).SelectedDate If Not String.IsNullOrEmpty(currentPattern) Then Dim dt As DateTime = Convert.ToDateTime(currentPattern) Dim dtFromString As String = dt.ToString("MM/dd/yyyy") & " 00:00:00" ' i.e the date they selected in the picker Dim dtToString As String = dt.AddDays(1).ToString("MM/dd/yyyy") & " 00:00:00" Dim filterPatternAssist As String = String.Empty Dim dateColumn As GridBoundColumn = CType(e.Item.OwnerTableView.GetColumnSafe("DateTime"), GridBoundColumn) Select Case filterOption Case "EqualTo" dtFromString = "DateTime >= #" & dtFromString & "# AND DateTime < #" & dtToString & "#" dateColumn.CurrentFilterFunction = GridKnownFunction.EqualTo Case "NotEqualTo" dtFromString = "Not DateTime = #" & dtFromString & "#" dateColumn.CurrentFilterFunction = GridKnownFunction.NotEqualTo Case "GreaterThan" dtFromString = "DateTime > #" & dtFromString & "#" dateColumn.CurrentFilterFunction = GridKnownFunction.GreaterThan Case "LessThan" dtFromString = "DateTime < #" & dtFromString & "#" dateColumn.CurrentFilterFunction = GridKnownFunction.LessThan Case "GreaterThanOrEqualTo" dtFromString = "DateTime >= #" & dtFromString & "#" dateColumn.CurrentFilterFunction = GridKnownFunction.GreaterThanOrEqualTo Case "LessThanOrEqualTo" dtFromString = "DateTime <= #" & dtFromString & "#" dateColumn.CurrentFilterFunction = GridKnownFunction.LessThanOrEqualTo Case "Between" dtFromString = "#" & dtFromString & "' <= DateTime AND DateTime <= #" & filterPatternAssist & "#" dateColumn.CurrentFilterFunction = GridKnownFunction.Between Case "NoFilter" dtFromString = String.Empty dateColumn.CurrentFilterFunction = GridKnownFunction.NoFilter Case "NotBetween" dtFromString = "DateTime <= #" & dtFromString & "' OR DateTime >= #" & filterPatternAssist & "#" dateColumn.CurrentFilterFunction = GridKnownFunction.NotBetween Case "IsNull" Case "NotIsNull" Case "Contains" dtFromString = String.Empty dateColumn.CurrentFilterFunction = GridKnownFunction.NoFilter End Select FilterGrid(dtFromString) End If End Select End If End Sub Private Sub FilterGrid(ByVal strFilter As String) Dim ds As DataSet = GetData() Dim dvFilter As DataView = ds.Tables(0).DefaultView dvFilter.RowFilter = strFilter grdShiftObservation.DataSource = dvFilter.ToTable() grdShiftObservation.DataBind() End Sub.button .rbSkinnedButton,.button .rbDecorated,.button .rbVerticalButton,.button .rbVerticalButton .rbDecorated,.button .rbSplitRight,.button .rbSplitLeft{ background: #EBEFF3 url('/Images/ButtonSprites.png') no-repeat 0px !important;} <property name="Language">de-DE</property><BR>
Hi,
For many grids in our project, there are around 40 columns, so we were trying to use the gridpersister to save the settings for individual user, so that the user can customize the number of columns they want to see everytime.
Saving and loading grid setting works fine. The problem is when the user tries to hide thie column from the header contextmenu, the arrangement of the columns are lost. I have used wrap="false" for Column header and Item properties in the gid. After hiding 1 or 2 column, most of the headers and coluns are wrapped.
The problem is very prominent in IE7, almost all the columns and all the row data are wrapped. I am using the following code for columns. I cannot use fixed width header as my coulmn values vary from 40 to 400 characters and I don't want white space in the column.
<HeaderStyle VerticalAlign="Bottom" HorizontalAlign="Left" /><ItemStyle Wrap="False" VerticalAlign="Top" HorizontalAlign="Left"/>