I've been spoiled by GridView!
I have need for something simpler, just basic 2-column lists, no paging, no complex templating, just a list with scrolling as needed.
The attached graphic shows an approximation of what I need. I manipulated height and width settings and was partially successful in creating an outline, but as you can see, instead of scrollbars I get overflow.
I am thinking that maybe I need to embed the ListView control inside a panel or other object to force scrollbars, but then presume the headings themselves will also scroll out of view.
Question 1) is there a better RAD AJAX control?
Question 2) why to the height and width settings have very little effect on this control, when they are spectacular with GridView?
<
telerik:RadListView
ID
=
"RadListView1"
runat
=
"server"
DataSourceID
=
"publication_date_summary"
BorderColor
=
"#3399FF"
BorderStyle
=
"Solid"
BorderWidth
=
"2px"
Height
=
"200px"
Skin
=
"Metro"
Width
=
"300px"
><
LayoutTemplate
>
<
div
class
=
"RadListView RadListView_Metro"
style
=
"max-width:140px; max-height:300px;"
>
<
table
cellspacing
=
"0"
">
<
thead
>
<
tr
class
=
"rlvHeader"
>
<
th
style
=
"width:100px;"
>Decade</
th
>
<
th
style
=
"width:40px;"
>Songs</
th
>
</
tr
>
</
thead
>
<
tbody
>
<
tr
id
=
"itemPlaceholder"
runat
=
"server"
>
</
tr
>
</
tbody
>
</
table
>
</
div
>
</
LayoutTemplate
>
<
ItemTemplate
>
<
tr
class
=
"rlvI"
>
<
td
>
<%-- <
asp:Label
ID
=
"NameLabel"
runat
=
"server"
Text='<%# Eval("Name") %>' />--%>
<
a
href='selector.aspx?
class_id
=
5
&
filter
=
decade
&decade=<%# Eval("pub_date")%>' target="_parent"><%# Eval("pub_date") %></
a
>
</
td
>
<
td
>
<
asp:Label
ID
=
"CountOfIDLabel"
runat
=
"server"
Text='<%# Eval("songs") %>' />
</
td
>
</
tr
>
</
ItemTemplate
>
<
EmptyDataTemplate
>
<
div
class
=
"RadListView RadListView_MetroTouch"
>
<
div
class
=
"rlvEmpty"
>
There are no items to be displayed.</
div
>
</
div
>
</
EmptyDataTemplate
>
</
telerik:RadListView
>
Inside the ItemsRequested Event of a RadComboBox we are using the value from a RadTextBox as part of the search criteria to load the RadComboxBox. When the code runs the text entered in the RadTextBox cannot be seen in the ItemsRequested event.
It looks like some JavaScript is need to record the value of the textbox when it is first entered on the client side so that it can be accessed on the server side. I was wondering what is the best way to do that. Should I put the value into a hidden field or some other variable?
Thanks
First of all, any help is greatly appreciated.
Currently we are having issues with radwindow performance. It is taking about 5 to 10 seconds in IE browser to open a radwindow. It is rather quick in chrome. Everything is bound on client side with an ajax manager to bind some telerik grids and occasionally custom page method post backs. I was wondering if there was a setting for rad windows to open up faster. Right at dlg.show() and dlg.center() is where it takes about 5 to 6 seconds. Why is this?
showMaterialsEditorDialog:
function
(data) {
var
control =
this
;
this
._selectedProject = data;
this
._projectStatusId = data.ProjectStatusId;
var
dlg = document.getElementById(
this
._windowId).control;
var
width = $telerik.$(window).width() * 90 / 100;
var
height = $telerik.$(window).height() * 90 / 100;
dlg.set_height(height);
dlg.set_width(width);
var
header = data.CustomerName +
' ('
+ data.ProjectName +
' - '
+ data.ProjectId +
')'
;
var
subHeader = data.CustomerName +
' ('
+ data.CustomerNo +
') - '
+ data.BranchName +
' - '
+ data.BusinessUnitDescription +
' ('
+ data.BusinessUnitCode +
')'
;
var
header = document.getElementsByClassName(
'addNewProjectHeader'
)
for
(
var
i = 0; i < header.length; i++) {
header[i].innerHTML = header;
}
var
subHeaderElement = document.getElementsByClassName(
'addNewProjectHeader'
)
for
(
var
i = 0; i < subHeaderElement.length; i++) {
subHeaderElement[i].innerHTML = subHeader;
}
// $('.addNewProjectSubHeader').html(subHeader);
dlg.show();
dlg.center();
var
pickListLink = $(dlg.get_contentElement().querySelector(
'.pickListButton'
));
//.find('.pickListButton');
pickListLink.off().on(
'click'
,
function
() {
if
(control._unplannedMaterials.length == 0 && control._plannedMaterials.length == 0) {
radalert(
'This project has no materials assigned.'
);
}
else
{
__doPostBack(
'pickList'
, data.ProjectStatusId);
}
});
var
restockListLink = $(dlg.get_contentElement().querySelector(
'.restockListButton'
));
//.find('.pickListButton');
restockListLink.off().on(
'click'
,
function
() {
if
(control._unplannedMaterials.length == 0 && control._plannedMaterials.length == 0) {
radalert(
'This project has no materials assigned.'
);
}
else
{
__doPostBack(
'restockList'
, data.ProjectStatusId);
}
});
debugger;
this
._rebindProject();
},
Here is the asp.net information:
<
telerik:RadWindow
ID
=
"MaterialsEditorWindow"
class
=
"windowMaterials"
ShowContentDuringLoad
=
"false"
AutoSize
=
"false"
DestroyOnClose
=
"true"
VisibleOnPageLoad
=
"false"
Behaviors
=
"Close"
Height
=
"800px"
Modal
=
"true"
Width
=
"1824"
runat
=
"server"
>
<
ContentTemplate
>
<
telerik:RadAjaxLoadingPanel
ID
=
"DialogLoadingPanel"
Skin
=
"Default"
runat
=
"server"
></
telerik:RadAjaxLoadingPanel
>
<
div
class
=
"addShiftHeaderContainer"
>
<
div
class
=
"addNewProjectHeader"
></
div
>
<
div
class
=
"addNewProjectSubHeader"
></
div
>
</
div
>
<
div
class
=
"buttonWrapper mtop10px"
>
<
button
type
=
"button"
style
=
"display: none;"
class
=
"imgButton projectSaveButton inventoryButton"
>
<
em
class
=
"imgHolder"
></
em
>Save Inventory</
button
>
<
button
type
=
"button"
class
=
"pickListButton inventoryButton"
>Pick List</
button
>
<
button
type
=
"button"
class
=
"restockListButton inventoryButton"
>Restock List</
button
>
<
button
type
=
"button"
class
=
"projectCancelButton inventoryButton"
>
Cancel</
button
>
<
button
type
=
"button"
class
=
"projectHasBeenFilledButton inventoryButton"
style
=
"float:right; display:none;"
disabled
=
"disabled"
>
Send To Filled</
button
>
<
button
type
=
"button"
class
=
"projectUnfillButton inventoryButton"
style
=
"float:right !important; display:none;"
disabled
=
"disabled"
>
Send To Unfill</
button
>
<
button
type
=
"button"
class
=
"projectRestockButton inventoryButton"
style
=
"float:right !important; display:none;"
disabled
=
"disabled"
>
Send To Restock</
button
>
</
div
>
<
div
class
=
"inventoryContentHeader"
>Materials</
div
>
<
telerik:RadCodeBlock
runat
=
"server"
>
<
a
href
=
"#"
onclick="$find('<%= this.InventoryContainer.ClientID %>').expandAllPlanned(); return false;">Expand All</
a
>
<
a
href
=
"#"
onclick="$find('<%= this.InventoryContainer.ClientID %>').collapseAllPlanned(); return false;">Collapse All</
a
>
<
a
href
=
"#"
class
=
"markAllComplete"
style
=
"display: none;"
onclick="$find('<%= this.InventoryContainer.ClientID %>').markAllComplete(); return false;">Mark All Completed</
a
>
</
telerik:RadCodeBlock
>
<
table
class
=
"equipPersonnelChangeInfo"
border
=
"0"
>
<
tr
>
<
td
><
b
>Last Equipment Change:</
b
></
td
>
<
td
><
span
id
=
"spnLastEquipChange"
class
=
"lastEquipChange"
runat
=
"server"
></
span
></
td
>
</
tr
>
<
tr
>
<
td
><
b
>Last Personnel Change:</
b
></
td
>
<
td
><
span
id
=
"spnLastPersonnelChange"
class
=
"lastPersonnelChange"
runat
=
"server"
></
span
></
td
>
</
tr
>
<
tr
>
<
td
><
b
>Last Miscellaneous Change:</
b
></
td
>
<
td
><
span
id
=
"spnLastMiscellaneousChange"
class
=
"lastMiscellaneousChange"
runat
=
"server"
></
span
></
td
>
</
tr
>
</
table
>
<
asp:HiddenField
ID
=
"hdnPlannedMaterialsData"
runat
=
"server"
/>
<
asp:HiddenField
ID
=
"hdnAjaxRequestField"
ClientIDMode
=
"Static"
runat
=
"server"
/>
<
telerik:RadGrid
ID
=
"MaterialsGrid"
EnableViewState
=
"false"
CssClass
=
"plannedGrid"
runat
=
"server"
AutoGenerateColumns
=
"false"
AllowPaging
=
"false"
Skin
=
"Default"
>
<
MasterTableView
HierarchyLoadMode
=
"Client"
runat
=
"server"
NoDetailRecordsText
=
"No actual materials have been added for this planned item."
>
<
Columns
>
<
telerik:GridTemplateColumn
ItemStyle-CssClass
=
"smallColumn"
>
<
ItemTemplate
>
<
a
href
=
"javascript: void(0);"
class
=
"addActualButton"
style
=
"display: none;"
id
=
"hypAdd"
runat
=
"server"
>Add</
a
>
</
ItemTemplate
>
<
ClientItemTemplate
>
<
a
href
=
"javascript: void(0);"
class
=
"addActualButton"
style
=
"display: none;"
id
=
"hypAdd"
runat
=
"server"
>Add</
a
>
</
ClientItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridBoundColumn
DataField
=
"ItemNo"
HeaderText
=
"Item Number"
></
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"MaterialFullName"
HeaderText
=
"Material Name"
></
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"DesiredQuantity"
HeaderText
=
"Desired Quantity"
></
telerik:GridBoundColumn
>
<
telerik:GridTemplateColumn
HeaderText
=
"Actual Quantity"
>
<
ClientItemTemplate
>
<
span
class
=
"actualQuantity"
></
span
>
</
ClientItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridBoundColumn
DataField
=
"QuantityOnSite"
HeaderText
=
"Quantity On-Site"
></
telerik:GridBoundColumn
>
</
Columns
>
<
NestedViewTemplate
>
<
input
type
=
"hidden"
name
=
"parentIndex"
/>
<
telerik:RadGrid
ID
=
"AssignedActualMaterialsGrid"
AllowPaging
=
"false"
EnableViewState
=
"false"
CssClass
=
"plannedActualGrid"
runat
=
"server"
Width
=
"90%"
OnItemDataBound
=
"MaterialsGrid_ItemDataBound"
AutoGenerateColumns
=
"false"
Skin
=
"Windows7"
>
<
MasterTableView
HierarchyDefaultExpanded
=
"true"
AllowPaging
=
"false"
EnableColumnsViewState
=
"false"
HierarchyLoadMode
=
"Client"
>
<
Columns
>
<
telerik:GridTemplateColumn
ItemStyle-CssClass
=
"smallColumn"
>
<
ItemTemplate
>
<
a
href
=
"#"
class
=
"removeActualButton"
style
=
"display: none;"
>Remove</
a
>
</
ItemTemplate
>
<
ClientItemTemplate
>
<
a
href
=
"javascript: void(0);"
class
=
"removeActualButton"
style
=
"display: none;"
>Remove</
a
>
</
ClientItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridBoundColumn
DataField
=
"OriginialUOMId"
Display
=
"false"
></
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"OriginialBusinessUnitId"
Display
=
"false"
></
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"OriginialBusinessUnitCode"
Display
=
"false"
></
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"ItemNo"
ItemStyle-CssClass
=
"mediumColumn"
HeaderText
=
"Item Number"
></
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"FullName"
HeaderText
=
"Description"
></
telerik:GridBoundColumn
>
<
telerik:GridTemplateColumn
ItemStyle-Width
=
"100"
HeaderText
=
"Unit of Measure"
>
<
ClientItemTemplate
>
<
select
class
=
"uomDropdown"
style
=
"width: 50px;"
disabled
=
"disabled"
></
select
>
</
ClientItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridTemplateColumn
HeaderText
=
"Business Unit"
>
<
ClientItemTemplate
>
<
select
class
=
"buDropdown"
disabled
=
"disabled"
></
select
>
</
ClientItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridTemplateColumn
HeaderStyle-CssClass
=
"binLocationDropDownHeader"
HeaderText
=
"Bins/Locations"
>
<
ClientItemTemplate
>
<
select
class
=
"buBinLocationDropdown"
disabled
=
"disabled"
></
select
>
</
ClientItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridTemplateColumn
ItemStyle-CssClass
=
"smallColumn"
HeaderText
=
"Quantity"
>
<
ItemTemplate
>
<
asp:TextBox
ID
=
"Qty"
disabled
=
"disabled"
Columns
=
"3"
MaxLength
=
"6"
onkeypress
=
"return isNumericKey(event);"
CssClass
=
"qty"
runat
=
"server"
/>
</
ItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridTemplateColumn
ItemStyle-CssClass
=
"smallColumn qtyReturnedItem"
HeaderStyle-CssClass
=
"qtyReturnedHeader"
HeaderText
=
"Quantity Returned"
>
<
ItemTemplate
>
<
asp:TextBox
ID
=
"QtyReturned"
disabled
=
"disabled"
Columns
=
"3"
MaxLength
=
"6"
Text
=
"0"
onkeypress
=
"return isNumericKey(event);"
CssClass
=
"qtyReturned"
runat
=
"server"
/>
</
ItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridTemplateColumn
HeaderText
=
"Complete?"
>
<
ItemTemplate
>
<
input
type
=
"checkbox"
id
=
"chkComplete"
disabled
=
"disabled"
runat
=
"server"
/>
</
ItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridTemplateColumn
HeaderText
=
"Split Item"
ItemStyle-CssClass
=
"splitItemGrid"
HeaderStyle-CssClass
=
"splitItemHeader"
>
<
ItemTemplate
>
<
a
href
=
"#"
class
=
"splitItem"
style
=
"display: none;"
>Split Item</
a
>
</
ItemTemplate
>
</
telerik:GridTemplateColumn
>
</
Columns
>
</
MasterTableView
>
<
ClientSettings
ClientEvents-OnCommand
=
"function(){}"
AllowExpandCollapse
=
"true"
>
<
DataBinding
ShowEmptyRowsOnLoad
=
"false"
></
DataBinding
>
</
ClientSettings
>
</
telerik:RadGrid
>
</
NestedViewTemplate
>
</
MasterTableView
>
<
ClientSettings
ClientEvents-OnCommand
=
"function(){}"
EnableAlternatingItems
=
"false"
>
<
DataBinding
ShowEmptyRowsOnLoad
=
"false"
></
DataBinding
>
<
Selecting
AllowRowSelect
=
"true"
/>
</
ClientSettings
>
</
telerik:RadGrid
>
<
div
id
=
"PlannedMaterialsPickerContainer"
class
=
"materialPickerContainer plannedMaterialsPickerContainer"
runat
=
"server"
>
<
uc1:ActualMaterialPicker
ID
=
"PlannedMaterialsMaterialPicker"
ReturnUnplannedMaterials
=
"false"
runat
=
"server"
/>
</
div
>
<
div
id
=
"NewMaterialRequest"
class
=
"mtop10px"
runat
=
"server"
>
<
div
class
=
"inventoryContentHeader"
style
=
"clear: both;"
>New Material Request</
div
>
<
telerik:RadGrid
ID
=
"NewMaterialRequestGrid"
PageSize
=
"100"
EnableViewState
=
"false"
runat
=
"server"
AutoGenerateColumns
=
"false"
>
<
MasterTableView
AllowPaging
=
"true"
runat
=
"server"
>
<
Columns
>
<
telerik:GridTemplateColumn
ItemStyle-CssClass
=
"smallColumn"
>
<
ItemTemplate
>
<
a
href
=
"#"
class
=
"removePlanButton"
style
=
"display: none;"
>Remove</
a
>
</
ItemTemplate
>
<
ClientItemTemplate
>
<
a
href
=
"javascript: void(0);"
class
=
"removePlanButton"
style
=
"display: none;"
>Remove</
a
>
</
ClientItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridBoundColumn
DataField
=
"TaskItemPlanMiscName"
HeaderText
=
"New Material Request"
></
telerik:GridBoundColumn
>
<
telerik:GridTemplateColumn
DataField
=
"Quantity"
HeaderText
=
"Quantity"
>
<
ItemTemplate
>
<
asp:TextBox
ID
=
"txtQty"
disabled
=
"disabled"
onkeypress
=
"return isNumericKey(event);"
Columns
=
"3"
CssClass
=
"qtyNewRequest"
runat
=
"server"
/>
</
ItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridTemplateColumn
HeaderText
=
"Comments"
HeaderStyle-Width
=
"300"
>
<
ClientItemTemplate
>
<
input
Type
=
"Text"
ID
=
"txtNotes"
disabled
=
"disabled"
class
=
"notesMaterialRequest"
style
=
"Width: 300px;"
maxlength
=
"200"
></
input
>
</
ClientItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridTemplateColumn
HeaderText
=
"Complete?"
>
<
ItemTemplate
>
<
input
type
=
"checkbox"
id
=
"chkComplete"
disabled
=
"disabled"
runat
=
"server"
/>
</
ItemTemplate
>
</
telerik:GridTemplateColumn
>
</
Columns
>
</
MasterTableView
>
<
ClientSettings
ClientEvents-OnCommand
=
"function(){}"
>
<
DataBinding
ShowEmptyRowsOnLoad
=
"false"
></
DataBinding
>
</
ClientSettings
>
</
telerik:RadGrid
>
</
div
>
<
div
id
=
"AddtlMaterialsContainer"
class
=
"mtop10px"
runat
=
"server"
>
<
div
class
=
"inventoryContentHeader"
style
=
"clear: both;"
>Additional Materials</
div
>
<
telerik:RadGrid
ID
=
"AdditionalMaterialsGrid"
PageSize
=
"999"
EnableViewState
=
"false"
runat
=
"server"
AutoGenerateColumns
=
"false"
>
<
MasterTableView
runat
=
"server"
AllowPaging
=
"true"
HierarchyLoadMode
=
"Client"
NoDetailRecordsText
=
"No actual materials have been added for this planned item."
>
<
Columns
>
<
telerik:GridTemplateColumn
>
<
ItemTemplate
>
<
a
href
=
"javascript: void(0);"
class
=
"removeActualButton"
style
=
"display: none;"
>Remove</
a
>
</
ItemTemplate
>
<
ClientItemTemplate
>
<
a
href
=
"javascript: void(0);"
class
=
"removeActualButton"
style
=
"display: none;"
>Remove</
a
>
</
ClientItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridBoundColumn
DataField
=
"MaterialId"
Display
=
"false"
></
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"OriginialUOMId"
Display
=
"false"
></
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"OriginialBusinessUnitId"
Display
=
"false"
></
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"OriginialBusinessUnitCode"
Display
=
"false"
></
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"ItemNo"
HeaderText
=
"Item Number"
></
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"FullName"
HeaderText
=
"Description"
></
telerik:GridBoundColumn
>
<
telerik:GridTemplateColumn
HeaderText
=
"Unit of Measure"
>
<
ClientItemTemplate
>
<
select
class
=
"uomDropdown"
disabled
=
"disabled"
></
select
>
</
ClientItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridTemplateColumn
HeaderText
=
"Business Unit"
>
<
ClientItemTemplate
>
<
select
class
=
"buDropdown"
disabled
=
"disabled"
></
select
>
</
ClientItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridTemplateColumn
HeaderStyle-CssClass
=
"binLocationDropDownHeader"
HeaderText
=
"Bins/Locations"
>
<
ClientItemTemplate
>
<
select
class
=
"buBinLocationDropdown"
disabled
=
"disabled"
></
select
>
</
ClientItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridTemplateColumn
HeaderText
=
"Quantity"
>
<
ClientItemTemplate
>
<
input
type
=
"text"
id
=
"txtQty"
disabled
=
"disabled"
onkeypress
=
"return isNumericKey(event);"
maxlength
=
"6"
style
=
"width: 40px"
class
=
"qty"
runat
=
"server"
/>
<%--<
asp:TextBox
ID
=
"txtQty"
disabled
=
"disabled"
onkeypress
=
"return isNumericKey(event);"
Columns
=
"3"
CssClass
=
"qty"
/>--%>
</
ClientItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridTemplateColumn
ItemStyle-CssClass
=
"smallColumn qtyReturnedItem"
HeaderStyle-CssClass
=
"qtyReturnedHeader"
HeaderText
=
"Quantity Returned"
>
<
ItemTemplate
>
<
asp:TextBox
ID
=
"QtyReturned"
disabled
=
"disabled"
Columns
=
"3"
MaxLength
=
"6"
Text
=
"0"
onkeypress
=
"return isNumericKey(event);"
CssClass
=
"qtyReturned"
runat
=
"server"
/>
</
ItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridTemplateColumn
HeaderText
=
"Complete?"
Display
=
"true"
>
<
ClientItemTemplate
>
<
input
type
=
"checkbox"
id
=
"chkComplete"
disabled
=
"disabled"
runat
=
"server"
/>
</
ClientItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridTemplateColumn
HeaderText
=
"Split Item"
ItemStyle-CssClass
=
"splitItemGrid"
HeaderStyle-CssClass
=
"splitItemHeader"
>
<
ItemTemplate
>
<
a
href
=
"#"
class
=
"splitItem"
style
=
"display: none;"
>Split Item</
a
>
</
ItemTemplate
>
<
ClientItemTemplate
>
<
a
href
=
"javascript: void(0);"
class
=
"splitItem"
style
=
"display: none;"
>Split Item</
a
>
</
ClientItemTemplate
>
<%--<
ClientItemTemplate
>
<
button
class
=
"splitItem"
onclick
=
"return false"
disabled
=
"disabled"
runat
=
"server"
>Split Item</
button
>
</
ClientItemTemplate
>--%>
</
telerik:GridTemplateColumn
>
</
Columns
>
</
MasterTableView
>
<
ClientSettings
ClientEvents-OnCommand
=
"function(){}"
>
<
DataBinding
ShowEmptyRowsOnLoad
=
"false"
></
DataBinding
>
</
ClientSettings
>
</
telerik:RadGrid
>
<
div
id
=
"AddUnplannedMaterialsLinkContainer"
runat
=
"server"
>
<
a
href
=
"#"
style
=
"display: none;"
class
=
"addUnplannedLink"
onclick="$find('<%= this.InventoryContainer.ClientID %>')._showUnplannedMaterialsPicker(); return false;">Add Additional Materials</
a
>
</
div
>
<
div
class
=
"materialPickerContainer"
>
<
uc1:ActualMaterialPicker
ID
=
"addtlMaterialsActualPicker"
ReturnUnplannedMaterials
=
"true"
runat
=
"server"
></
uc1:ActualMaterialPicker
>
</
div
>
</
div
>
<
div
class
=
"horizCenter"
>
<
div
id
=
"MiscContainer"
class
=
"floatLeft"
style
=
"width: 100%;"
runat
=
"server"
>
<
div
class
=
"shiftContentHeader"
style
=
"clear: both;"
>Miscellaneous</
div
>
<
telerik:RadGrid
ID
=
"radMiscGrid"
runat
=
"server"
></
telerik:RadGrid
>
</
div
>
</
div
>
<
br
/>
<
div
class
=
"horizCenter"
>
<
div
id
=
"PersonnelContainer"
class
=
"floatLeft"
style
=
"width: 49%;"
runat
=
"server"
>
<
div
class
=
"shiftContentHeader"
style
=
"clear: both;"
>Personnel</
div
>
<
telerik:RadGrid
ID
=
"radPersonnelGrid"
runat
=
"server"
></
telerik:RadGrid
>
</
div
>
<
div
id
=
"EquipmentContainer"
class
=
"floatLeft mleft20px"
style
=
"width: 49%;"
runat
=
"server"
>
<
div
class
=
"shiftContentHeader"
style
=
"clear: both;"
>Equipment</
div
>
<
telerik:RadGrid
ID
=
"radEquipmentGrid"
runat
=
"server"
></
telerik:RadGrid
>
</
div
>
<
div
class
=
"cleared"
></
div
>
</
div
>
<
div
id
=
"MaterialNotesContainers"
class
=
"cleared mtop20px"
runat
=
"server"
>
<
uc1:ProjectNoteEditor
ID
=
"ucNoteEditor"
DisableEditing
=
"true"
HeaderClass
=
"inventoryContentHeader"
ClockNumber
=
"111111"
NoteType
=
"MaterialsNotes"
runat
=
"server"
></
uc1:ProjectNoteEditor
>
</
div
>
<
div
class
=
"buttonWrapper cleared floatLeft mtop20px"
>
<
button
type
=
"button"
id
=
"projectSaveButton"
style
=
"display: none;"
class
=
"imgButton projectSaveButton"
>
<
em
class
=
"imgHolder"
></
em
>Save Inventory</
button
>
<
button
type
=
"button"
class
=
"pickListButton"
>Pick List</
button
>
<
button
type
=
"button"
class
=
"restockListButton inventoryButton"
>Restock List</
button
>
<
button
type
=
"button"
id
=
"projectCancelButton"
class
=
"projectCancelButton"
>
Cancel</
button
>
</
div
>
</
ContentTemplate
>
</
telerik:RadWindow
>
I have a grid that is in batch edit mode and I'm including the ability to mass update the current filtered view. What I can't seem to get to work is the addition of the css class k-dirty-cell to those changed cells and even the previously adjusted batch edit cells lose their red triangle as well. Any ideas?
The grid:
@(Html.Kendo().Grid<AELIS3.ShuttleCust.Entities.ActivePlan>()
.Name("ActivePlan")
.Columns(columns =>
{
columns.Bound(p => p.Account)
.Filterable(filterable => filterable.UI("accountFilter").Extra(false))
.Width(100);
columns.Bound(p => p.Origin)
.Filterable(filterable => filterable.UI("originFilter").Extra(false))
.Width(85);
columns.Bound(p => p.CustomerName)
.Filterable(filterable => filterable.UI("customerFilter").Extra(false))
.Width(250);
columns.Bound(p => p.City)
.Filterable(filterable => filterable.UI("citiesFilter").Extra(false))
.Width(125);
columns.Bound(p => p.State)
.Filterable(filterable => filterable.UI("statesFilter").Extra(false))
.Width(85);
columns.Bound(p => p.Sun)
.Filterable(filterable => filterable.UI("warehouseFilter").Extra(false))
.ClientTemplate("#if(SunLock === true){#<span class='red'>#: Sun #</span>#} else {#<span class='black'>#: Sun#</span>#}#")
.EditorTemplateName("_WRHS_Sunday");
columns.Bound(p => p.Mon)
.Filterable(filterable => filterable.UI("warehouseFilter").Extra(false))
.ClientTemplate("#if(MonLock === true){#<span class='red'>#: Mon #</span>#} else {#<span class='black'>#: Mon#</span>#}#")
.EditorTemplateName("_WRHS_Monday");
columns.Bound(p => p.Tue)
.Filterable(filterable => filterable.UI("warehouseFilter").Extra(false))
.ClientTemplate("#if(TueLock === true){#<span class='red'>#: Tue #</span>#} else {#<span class='black'>#: Tue#</span>#}#")
.EditorTemplateName("_WRHS_Tuesday");
columns.Bound(p => p.Wed)
.Filterable(filterable => filterable.UI("warehouseFilter").Extra(false))
.ClientTemplate("#if(WedLock === true){#<span class='red'>#: Wed #</span>#} else {#<span class='black'>#: Wed#</span>#}#")
.EditorTemplateName("_WRHS_Wednesday");
columns.Bound(p => p.Thu)
.Filterable(filterable => filterable.UI("warehouseFilter").Extra(false))
.ClientTemplate("#if(ThuLock === true){#<span class='red'>#: Thu #</span>#} else {#<span class='black'>#: Thu#</span>#}#")
.EditorTemplateName("_WRHS_Thursday");
columns.Bound(p => p.Fri)
.Filterable(filterable => filterable.UI("warehouseFilter").Extra(false))
.ClientTemplate("#if(FriLock === true){#<span class='red'>#: Fri #</span>#} else {#<span class='black'>#: Fri#</span>#}#")
.EditorTemplateName("_WRHS_Friday");
columns.Bound(p => p.Sat)
.Filterable(filterable => filterable.UI("warehouseFilter").Extra(false))
.ClientTemplate("#if(SatLock === true){#<span class='red'>#: Sat #</span>#} else {#<span class='black'>#: Sat#</span>#}#")
.EditorTemplateName("_WRHS_Saturday");
})
.Editable(editable => editable.Mode(GridEditMode.InCell))
.DataSource(dataSource => dataSource
.Ajax()
.Batch(true)
.ServerOperation(false)
.PageSize(18)
.Group(groups => groups.Add(p => p.WeekBegin))
.Read(read => read.Action("ActivePlan_Read", "ShuttleCustomer").Data("weekReturn"))
.Update(update => update.Action("ActivePlan_Update", "ShuttleCustomer"))
.Model(model =>
{
model.Id(p => p.AccountID);
model.Field(p => p.Account).Editable(false);
model.Field(p => p.Origin).Editable(false);
model.Field(p => p.CustomerName).Editable(false);
model.Field(p => p.City).Editable(false);
model.Field(p => p.State).Editable(false);
model.Field(p => p.WeekBegin).Editable(false);
model.Field(p => p.WeekNo).Editable(false);
model.Field(p => p.Sun).Editable(true);
model.Field(p => p.SunLock).Editable(false);
model.Field(p => p.Mon).Editable(true);
model.Field(p => p.MonLock).Editable(false);
model.Field(p => p.Tue).Editable(true);
model.Field(p => p.TueLock).Editable(false);
model.Field(p => p.Wed).Editable(true);
model.Field(p => p.WedLock).Editable(false);
model.Field(p => p.Thu).Editable(true);
model.Field(p => p.ThuLock).Editable(false);
model.Field(p => p.Fri).Editable(true);
model.Field(p => p.FriLock).Editable(false);
model.Field(p => p.Sat).Editable(true);
model.Field(p => p.SatLock).Editable(false);
})
)
.Pageable(pageable => pageable.ButtonCount(5))
.Events(e => e.FilterMenuInit("FilterMenuFunc"))
.ToolBar(toolbar => {
toolbar.Save();
})
.Selectable(selectable => selectable.Mode(GridSelectionMode.Multiple))
.Filterable(filtering => filtering.Enabled(true))
.Groupable(grouping => grouping.Enabled(true))
.Sortable(sorting => sorting.Enabled(true))
.Scrollable(scrolling => scrolling.Enabled(true).Height("auto"))
)
The mass batch update function:
function iterateAll()
{
var col = document.getElementById('dow').value;
var value = document.getElementById('warehouses').value;
var grid = $('#ActivePlan').data('kendoGrid');
grid.select(grid.tbody.find(">tr"));
var selected = grid.select();
var days = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];
var colIdx = days.indexOf(col);
for (var i = 0, max = selected.length ; i < max ; i++) {
grid._data[i].set(col, value); //works perfects
grid.tbody.find('td:nth-child(' + (colIdx + 7) + ')').addClass('k-dirty-cell'); //I can add other classes here but they're only temporary additions and the k-dirty-cell doesn't work at all
}
}
Is there a way of setting minor tick count on YAxis?
I would like to increase minor tick count
We are using an older version of the Editor on an older ASP.NET application. The version number on the RadControls/Editor/Scripts directory says 7_3_6. I believe we determined that due to the older version of .NET that we are using, we cannot upgrade RadControls any further.
The behavior we are experiencing is that sometimes, when a use rclicks the Update button in the Editor dialogue, any HREFs in the editor window get changed from "path/to/file" or http://web.site/path/to/file to "about:path/to/file" or "about:path/to/this_application." Has anybody else seen this behavior, or have any idea what causes it? We can't reproduce it reliably and when it happens the only way to get it to stop is to restart the user's PC.
Thanks.
Hi, I want to disable AllowCustomText in RadComboBox I find this article AllowCustomText Cannot Be Disabled When Loading Items on Demand and try to implement it. I set these property in my onLoad method​:
EnableLoadOnDemand =
false
;
EnableViewState =
true
;
ShowMoreResultsBox =
true
;
EnableVirtualScrolling =
true
;
AppendDataBoundItems =
true
;
ShowToggleImage =
true
;
NoWrap =
true
;
AllowCustomText =
false
;
MarkFirstMatch =
true
;
HighlightTemplatedItems =
true
;
DropDownWidth = 350;
MaxHeight = 250;
Filter = RadComboBoxFilter.Contains;
ItemsRequested +=
new
RadComboBoxItemsRequestedEventHandler(comboItemsRequested);
OnClientDropDownOpening =
"OnClientComboBoxDropDownOpeningHandler"
;
function
OnClientComboBoxDropDownOpeningHandler(sender, eventArgs) {
try
{
sender.requestItems(
""
,
false
);
}
catch
(e) {
radalert(e.message +
"<br>"
+ e.stack)
}
}
b is undefined
and stack trace:
Telerik.Web.UI.ControlItem.prototype._initialize@http://localhost:60103/Telerik.Web.UI.WebResource.axd?_TSM_HiddenField_=ctl00_ctl00_ctl00_ctl00_ctl00_ContentBody_ContentMain_RadScriptManager1_TSM&compress=1&_TSM_CombinedScripts_=%3b%3bSystem.Web.Extensions%2c+Version%3d4.0.0.0%2c+Culture%3dneutral%2c+Telerik.Web.UI%2c+Version%3d2013.3.1114.40%2c+:1978:1
b.RadComboBox._createChildControls@http://localhost:60103/Telerik.Web.UI.WebResource.axd?_TSM_HiddenField_=ctl00_ctl00_ctl00_ctl00_ctl00_ContentBody_ContentMain_RadScriptManager1_TSM&compress=1&_TSM_CombinedScripts_=%3b%3bSystem.Web.Extensions%2c+Version%3d4.0.0.0%2c+Culture%3dneutral%2c+Telerik.Web.UI%2c+Version%3d2013.3.1114.40%2c+:3850:1
b.RadComboBox.prototype._createChildControls@http://localhost:60103/Telerik.Web.UI.WebResource.axd?_TSM_HiddenField_=ctl00_ctl00_ctl00_ctl00_ctl00_ContentBody_ContentMain_RadScriptManager1_TSM&compress=1&_TSM_CombinedScripts_=%3b%3bSystem.Web.Extensions%2c+Version%3d4.0.0.0%2c+Culture%3dneutral%2c+Telerik.Web.UI%2c+Version%3d2013.3.1114.40%2c+:3317:1
b.RadComboBox.prototype._ensureChildControls@http://localhost:60103/Telerik.Web.UI.WebResource.axd?_TSM_HiddenField_=ctl00_ctl00_ctl00_ctl00_ctl00_ContentBody_ContentMain_RadScriptManager1_TSM&compress=1&_TSM_CombinedScripts_=%3b%3bSystem.Web.Extensions%2c+Version%3d4.0.0.0%2c+Culture%3dneutral%2c+Telerik.Web.UI%2c+Version%3d2013.3.1114.40%2c+:3318:67
b.RadComboBox.prototype.requestItems@http://localhost:60103/Telerik.Web.UI.WebResource.axd?_TSM_HiddenField_=ctl00_ctl00_ctl00_ctl00_ctl00_ContentBody_ContentMain_RadScriptManager1_TSM&compress=1&_TSM_CombinedScripts_=%3b%3bSystem.Web.Extensions%2c+Version%3d4.0.0.0%2c+Culture%3dneutral%2c+Telerik.Web.UI%2c+Version%3d2013.3.1114.40%2c+:4659:2
OnClientComboBoxDropDownOpeningHandler@http://localhost:60103/Js/ContentClient/def_content_client.js?v=0.3.0.1:215:16 Sys.EventHandlerList.prototype.getHandler/<@http://localhost:60103/Telerik.Web.UI.WebResource.axd?_TSM_HiddenField_=ctl00_ctl00_ctl00_ctl00_ctl00_ContentBody_ContentMain_RadScriptManager1_TSM&compress=1&_TSM_CombinedScripts_=%3b%3bSystem.Web.Extensions%2c+Version%3d4.0.0.0%2c+Culture%3dneutral%2c+Telerik.Web.UI%2c+Version%3d2013.3.1114.40%2c+:6:51366
Do you have any idea what can be wrong?
Thank you,
Petr
​
I have a VS2013 web forms project and use the RadEditor in many places. All works fine in test (Windows 8.1 Pro) but when publishing to production on Windows server 2012 R2, the editor appears with toolbars but with no content and totally disabled. I am not setting any custom skins as the default is fine. I have made sure that all entries in web.config for Telerik are the same. I am testing in the same browser (Chrome). No errors appear, the control is just completely disabled.
​