.RadGrid_Office2007 .SelectedItem
{
background-image: url(img/SelectedRow.gif);
background-repeat: no-repeat;
background-position: top right;
background-color: Green !important;
background: Green 0 -3900px repeat-x url('Grid/sprite.gif') !important;
}
.RadGrid_Office2007 .rgSelectedRow
{
background: Green 0 -3900px repeat-x url('Grid/sprite.gif') !important;
color:#fff;
}
.RadGrid_Office2007 .SelectedStyle
{
background-color: Green !important;
}
<%--.RadGrid td.rgSelectedCell
{
background: #141414 !important;
background-image: none;
}
.RadGrid .rgSelectedRow td
{
background-color: #141414 !important;
background-image: none;
}
.RadGrid_Default th.rgHeader
{
background-image: none;
background-color: Blue !important;
}
.SelectedItem
{
background-color: Green !important;
}
.RadGrid .GridRowSelector_Default
{
background-image: none;
background-color: Green !important;
}
.RadGrid .ActiveRow_Default td
{
background-image: none;
background-color: Green !important;
}
--%>
<telerik:GridTemplateColumn HeaderText="Physical Count Date" HeaderStyle-HorizontalAlign="Center" DataType="System.Boolean" UniqueName="CountDate" DataField="HasCount" ItemStyle-Width="100" ItemStyle-HorizontalAlign="Left" AllowFiltering="true"> <ItemStyle CssClass="no-border" /> <ItemTemplate> <asp:Label ID="LabelDate" runat="server" Text='<%# ((bool)Eval("HasCount")) ? Eval("CountDate","{0:dd/MM/yyyy}") : "Not performed" %>'></asp:Label> </ItemTemplate>protected void RadGrid2_ItemCreated(object sender, Telerik.Web.UI.GridItemEventArgs e) { if (e.Item is GridFilteringItem) { GridFilteringItem filteringItem = (e.Item as GridFilteringItem); filteringItem["CountDate"].Controls.Clear(); DropDownList ddList = new DropDownList(); ddList.AutoPostBack = true; ddList.SelectedIndexChanged += new System.EventHandler(ddList_SelectedIndexChanged); ddList.Items.Add(new ListItem("Clear filter", "Empty")); ddList.Items.Add(new ListItem("Show all counted", "True")); ddList.Items.Add(new ListItem("Show all not counted", "False")); if (Session["ddlSelValue"] != null) { ddList.Items.FindByValue((string)Session["ddlSelValue"]).Selected = true; } filteringItem["CountDate"].Controls.Add(ddList); } } protected void ddList_SelectedIndexChanged(object sender, System.EventArgs e) { DropDownList ddList = (DropDownList)sender; Session["ddlSelValue"] = ddList.SelectedValue; switch (ddList.SelectedValue) { case "True": RadGrid2.MasterTableView.FilterExpression = "([HasCount] = True) "; break; case "False": RadGrid2.MasterTableView.FilterExpression = "([HasCount] = False) "; break; case "Empty": RadGrid2.MasterTableView.FilterExpression = String.Empty; break; } foreach (GridColumn column in RadGrid2.MasterTableView.Columns) { column.CurrentFilterFunction = GridKnownFunction.NoFilter; column.CurrentFilterValue = String.Empty; } RadGrid2.MasterTableView.Rebind(); }Hi,
I have created a basic asp.net application with below code:
<telerik:RadAsyncUpload runat="server" ID="AsyncUpload1" ChunkSize="1048576" />
When I run the application, files are getting uploaded to the app_data folder for IE\Chrome.
However, for safari the uploaded file is not having the valid file extension and sometimes it's not uploading the files.
There is no code added in cs file and the config file contains below configuration:
<system.webServer>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="2199023255"/>
<fileExtensions allowUnlisted="true"/>
</requestFiltering>
</security>
<handlers>
<add path="Telerik.Web.UI.WebResource.axd" verb="*" type="Telerik.Web.UI.WebResource, Telerik.Web.UI" name="Telerik.Web.UI.WebResource"/>
</handlers>
<directoryBrowse enabled="true"/>
</system.webServer>
Any pointers will be appreciated.
Thanks.
Hello,
I would like to have a multi-level RadPanelBar with the following behavior:
a) Use 100% of the height (and thereforre display empty space between the last child item and the next sibling item).
b) Always have exactly one item expanded in level 0.
c) Always have all the direct and indirect child nodes expanded below the level-0 item that is expanded.
It seems that there are contradicting settings that would be required. If I use ExpandMode="FullExpandedItem", then I can achieve requirements a) and b), but not c). If I use ExpandMode="MultipleExpandedItems", then I can achieve requirements b) (with some client--side coding) and c), but nott a).
Your assistance would be appreciated.
Thanks,
Michel
Public Class clTemplateColumn Implements ITemplate Protected _label1 As Label Private _colName As String Public Sub New(ByVal colName As String) _colName = colName End Sub Public Sub InstantiateIn(container As Control) Implements ITemplate.InstantiateIn _label1 = New Label _label1.ID = _colName + "Label" AddHandler _label1.DataBinding, AddressOf Label1_DataBinding container.Controls.Add(_label1) End Sub Private Sub Label1_DataBinding(ByVal sender As Object, ByVal e As EventArgs) Dim _label As Label = DirectCast(sender, Label) Dim _container As Telerik.Web.UI.GridDataItem = DirectCast(_label.NamingContainer, Telerik.Web.UI.GridDataItem) _label.Text = DirectCast(_container.DataItem, DataRowView)(_colName).ToString End SubEnd ClassPublic Class clTemplateColumnFooter Implements ITemplate Protected _label1 As Label Private _footerID As String Public Sub New(ByVal footerID As String) _footerID = footerID End Sub Public Sub InstantiateIn(container As Control) Implements ITemplate.InstantiateIn _label1 = New Label _label1.ID = _footerID container.Controls.Add(_label1) End SubEnd Class<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="TestPage1.aspx.vb" Inherits="GridRowColTotals.TestPage1" %><%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %><!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"> <title></title></head><body> <form id="form1" runat="server"> <telerik:RadScriptManager ID="RadScriptManager1" runat="server"> <Scripts> <asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.Core.js" /> <asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.jQuery.js" /> <asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.jQueryInclude.js" /> </Scripts> </telerik:RadScriptManager> <div> <telerik:RadButton ID="btnGenerateData" runat="server" Text="GenerateData"></telerik:RadButton> <br /> <br /> <telerik:RadGrid ID="rgResults" runat="server" CellSpacing="0" GridLines="Both" ShowFooter="True" AutoGenerateColumns="false"> <ClientSettings EnablePostBackOnRowClick="false"> <Scrolling AllowScroll="true" /> <ClientEvents OnCellSelecting="OnCellSelecting" OnCellSelected="OnCellSelected" OnCellDeselected="OnCellDeselected" /> </ClientSettings> </telerik:RadGrid> <br /> <br /> <telerik:RadButton ID="btnCheckSelectedItems" runat="server" Text="Selected Values"></telerik:RadButton> <script type="text/javascript" language="javascript"> // When selecting the cells from the results grid, if any of the cells belong to the column MainHeader then cancel the select. function OnCellSelecting(sender, args) { if (args.get_column().get_uniqueName() == "MainHeader") { args.set_cancel(true); } } function OnCellSelected(sender, args) { // Find the grid master table to get the footer element var _masterTable = $find("<%=rgResults.ClientID%>").get_masterTableView(); var _masterTableViewFooter = _masterTable.get_element().getElementsByTagName("TFOOT")[0]; // Get the index of the column var _cellIndex = _masterTable.getColumnByUniqueName(args.get_column().get_uniqueName()).get_element().cellIndex + 1; // Get the value from the current selected cell, check the length and set to 0 if nothing in it. var _cellValue = args.get_gridDataItem().get_cell(args.get_column().get_uniqueName()).innerText; if (_cellValue.length == 0) { _cellValue = "0"; } // Get the current total value for the column the selected cell is in, check the length and set to 0 if nothing in it. var _currentTotal = _masterTableViewFooter.rows[0].cells[_cellIndex].innerText; if (_currentTotal.length == 0) { _currentTotal = "0"; } // Work out the new total, and set the footer value. var _newTotal = parseInt(_currentTotal) + parseInt(_cellValue); _masterTableViewFooter.rows[0].cells[_cellIndex].innerText = _newTotal.toString(); } function OnCellDeselected(sender, args) { // Find the grid master table to get the footer element var _masterTable = $find("<%=rgResults.ClientID%>").get_masterTableView(); var _masterTableViewFooter = _masterTable.get_element().getElementsByTagName("TFOOT")[0]; // Get the index of the column var _cellIndex = _masterTable.getColumnByUniqueName(args.get_column().get_uniqueName()).get_element().cellIndex + 1; // Get the value from the current selected cell, check the length and set to 0 if nothing in it. var _cellValue = args.get_gridDataItem().get_cell(args.get_column().get_uniqueName()).innerText; if (_cellValue.length == 0) { _cellValue = "0"; } // Get the current total value for the column the selected cell is in, check the length and set to 0 if nothing in it. var _currentTotal = _masterTableViewFooter.rows[0].cells[_cellIndex].innerText; if (_currentTotal.length == 0) { _currentTotal = "0"; } // Work out the new total, and set the footer value. var _newTotal = parseInt(_currentTotal) - parseInt(_cellValue); _masterTableViewFooter.rows[0].cells[_cellIndex].innerText = _newTotal.toString(); } </script> </div> </form></body></html>Public Class TestPage1 Inherits System.Web.UI.Page Dim _resultsDataSource As New DataTable("resultsData") Private Sub btnGenerateData_Click(sender As Object, e As EventArgs) Handles btnGenerateData.Click GenerateData() End Sub Private Sub GenerateData() BuildDataTable(_resultsDataSource) AddColumnsToGrid(_resultsDataSource) rgResults.DataSource = _resultsDataSource rgResults.DataBind() End Sub Private Sub BuildDataTable(ByRef pivotData As DataTable) pivotData.Rows.Clear() pivotData.Columns.Clear() pivotData.Clear() Dim _pivotRow As DataRow ' Add the KEY column pivotData.Columns.Add(AddNewPivotColumn("Key", "Key", "System.String")) ' Add the Main Header column pivotData.Columns.Add(AddNewPivotColumn("MainHeader", "", "System.String")) ' Add the Blank/Male/Female Column pivotData.Columns.Add(AddNewPivotColumn("Blank", "Blank", "System.Decimal")) pivotData.Columns.Add(AddNewPivotColumn("_33", "Male", "System.Decimal")) pivotData.Columns.Add(AddNewPivotColumn("_34", "Female", "System.Decimal")) ' Add the data _pivotRow = AddNewPivotRow(pivotData) _pivotRow(0) = "Blank" ' Key _pivotRow(1) = "Blank" ' Main Header _pivotRow(2) = "5" ' 5 people in blank pivotData.Rows.Add(_pivotRow) _pivotRow = AddNewPivotRow(pivotData) _pivotRow(0) = "1" ' Key _pivotRow(1) = "20-29" ' Main Header _pivotRow(3) = "15" ' 15 people in Male _pivotRow(4) = "7" ' 7 people in Female pivotData.Rows.Add(_pivotRow) _pivotRow = AddNewPivotRow(pivotData) _pivotRow(0) = "2" ' Key _pivotRow(1) = "30-39" ' Main Header _pivotRow(3) = "2" ' 2 people in Male _pivotRow(4) = "33" ' 33 people in Female pivotData.Rows.Add(_pivotRow) _pivotRow = AddNewPivotRow(pivotData) _pivotRow(0) = "3" ' Key _pivotRow(1) = "40-49" ' Main Header _pivotRow(3) = "12" ' 12 people in Male _pivotRow(4) = "17" ' 17 people in Female pivotData.Rows.Add(_pivotRow) End Sub Private Function AddNewPivotColumn(ByVal columnName As String, ByVal caption As String, ByVal dataType As String) As DataColumn Dim _newCol As DataColumn = New DataColumn(columnName, Type.GetType(dataType)) _newCol.Caption = caption Return _newCol End Function Private Function AddNewPivotRow(ByVal pivotData As DataTable) As DataRow Dim _newRow As DataRow = pivotData.NewRow() For Each _pivotColumn As DataColumn In pivotData.Columns _newRow(_pivotColumn) = DBNull.Value Next Return _newRow End Function Private Sub AddColumnsToGrid(ByVal pivotData As DataTable) ' Clear out the existing columns and group columns rgResults.MasterTableView.ColumnGroups.Clear() rgResults.MasterTableView.Columns.Clear() ' Create the column group header Dim _groupColumn As New Telerik.Web.UI.GridColumnGroup rgResults.MasterTableView.ColumnGroups.Add(_groupColumn) _groupColumn.HeaderText = "Gender" _groupColumn.Name = "GroupColumnHeader" _groupColumn.HeaderStyle.HorizontalAlign = HorizontalAlign.Center Dim _boundColumn As New Telerik.Web.UI.GridBoundColumn rgResults.MasterTableView.Columns.Add(_boundColumn) _boundColumn.DataField = pivotData.Columns(1).ColumnName _boundColumn.HeaderText = pivotData.Columns(1).Caption _boundColumn.UniqueName = pivotData.Columns(1).ColumnName.Replace(" ", "") _boundColumn.FooterStyle.Font.Bold = True _boundColumn.HeaderText = "Age" For _ii As Integer = 2 To pivotData.Columns.Count - 1 Step 1 Dim _templateColumn As New Telerik.Web.UI.GridTemplateColumn rgResults.MasterTableView.Columns.Add(_templateColumn) _templateColumn.ItemTemplate = New clTemplateColumn(pivotData.Columns(_ii).ColumnName.Replace(" ", "")) _templateColumn.HeaderText = pivotData.Columns(_ii).Caption _templateColumn.UniqueName = pivotData.Columns(_ii).ColumnName.Replace(" ", "") _templateColumn.ColumnGroupName = "GroupColumnHeader" _templateColumn.FooterTemplate = New clTemplateColumnFooter(pivotData.Columns(_ii).ColumnName.Replace(" ", "") + "Footer") Next rgResults.ClientSettings.Selecting.CellSelectionMode = Telerik.Web.UI.GridCellSelectionMode.MultiColumn End Sub Private Sub btnCheckSelectedItems_Click(sender As Object, e As EventArgs) Handles btnCheckSelectedItems.Click For Each _cell As Telerik.Web.UI.GridTableCell In rgResults.SelectedCells Dim _gridItem As Telerik.Web.UI.GridDataItem = DirectCast(_cell.NamingContainer, Telerik.Web.UI.GridDataItem) Dim _label As Label = DirectCast(_gridItem.FindControl(_cell.Column.UniqueName + "Label"), Label) Dim _label2 As Label = DirectCast(_gridItem.Cells(_cell.Column.OrderIndex).FindControl(_cell.Column.UniqueName + "Label"), Label) Dim _cellText As String = _label.Text Next End SubEnd Class