I have a kendo grid in a kendo PanelBar (actually, I have a few kendo grids in a few kendo panelbars in the same page), and to eliminate a long load time, I don;t want to actually retrieve the grids data until the specific PanelBar get's expanded. I figured out the Expand event, but how do I configure my Grid to get the data based on that event?
<
ul
id
=
"panelbar"
>
<
li
id
=
"item1"
>
<
b
>Names</
b
>
<
div
id
=
"SampleNamesGrid"
></
div
>
@(Html.Kendo().Grid<
SampleName
>().Name("SampleNamesGrid")
.TableHtmlAttributes(new {@class = "table-condensed"})
.Columns(c =>
{
c.Bound(sn => sn.ID);
c.Bound(sn => sn.FirstName);
c.Bound(sn => sn.LastName);
})
.DataSource(d => d
.Ajax()
.Read(r => r.Action("GetNames", "SampleNames").Type(HttpVerbs.Get))
.PageSize(20)
)
.Pageable()
.Filterable()
.Sortable())
</
li
>
</
ul
>
<
script
>
$("#panelbar").kendoPanelBar({
expand: Expand
});
function Expand(e) {
alert("open");
}
</
script
>
I have a grid with an InCell edit and I have one of the columns as a dropdown list and I'm implementing this using EditorTemplateName. I'm getting the dropdown list populated but how do I have the default value of the dropdown selected to the bound column value? Now I just get a dropdown on clicking the cell with all the values populated and the default selected value is blank.
My Editior Template :
@model IEnumerable<AMCUpfrontTracker2.Models.Agency_Ref>
@(Html.Kendo().DropDownListFor(m => m)
.DataValueField("AgencyID")
.DataTextField("AgencyName")
.BindTo((System.Collections.IEnumerable)ViewData["Agencies"])
)
Hi,
I was wondering if there is a way to disable child check boxes when parent check boxes have been disabled. I have used the selectableMode property to disable parent checkbox but am running into issue disabling child checkbox using same property.
C#:
//This is for disabling child checkbox
protected void BindChildGrid(GridDataItem parentItem)
{
var ucQuoteRows = parentItem.ChildItem.FindControl("ucExpiringRealServices") as UserControls.CustomerGrid;
CheckBox checkBox = (CheckBox)parentItem["BulkActionSelect"].Controls[0];
if (ucQuoteRows != null)
{
checkBox.Attributes.Add("data-customergridid", ucQuoteRows.ClientID);
//var envelopeName = parentItem.GetDataKeyValue("Name");
ucQuoteRows.ParentId = parentItem.GetDataKeyValue("ObjectId").ToString();
/*ucQuoteRows.ExportFileNamePrefix = envelopeName.ToString();
ucQuoteRows.TaInfoEnable = RoleEngine.CurrentUserHasTARead();*/
//BindCustomerGrid(ucQuoteRows, null);
if (parentItem.SelectableMode == GridItemSelectableMode.None)
{
ucQuoteRows.AllowSelection = false;
}
else if (parentItem.SelectableMode == GridItemSelectableMode.ServerAndClientSide)
{
ucQuoteRows.AllowSelection = true;
}
ucQuoteRows.ColumnCollection = null;
ucQuoteRows.Rebind();
}
}
//this correctly disables parent checkbox
protected void rgExpiringServices_ItemDataBound(object sender, GridItemEventArgs e)
{
if (e.Item is GridDataItem)
{
var dataItem = ((GridDataItem)e.Item);
var ObjectId = Guid.Parse(dataItem.GetDataKeyValue("ObjectId").ToString());
e.Item.SelectableMode = this.DisabledIds.Contains(ObjectId) ? GridItemSelectableMode.None : GridItemSelectableMode.ServerAndClientSide;
}
}
aspx:
<%@ Page Title="" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="ExpiringServices.aspx.cs" Inherits="FNA.NRTT.Website.Customer.Service.ExpiringServices" %>
<%@ Register TagPrefix="nrtt" TagName="CustomerGrid" Src="~/UserControls/CustomerGrid.ascx" %>
<%@ Register TagPrefix="nrtt" TagName="DisplayClientDefinedField" Src="~/UserControls/DisplayClientDefinedField.ascx" %>
<
asp:Content
ID
=
"Content1"
ContentPlaceHolderID
=
"HeadContent"
runat
=
"server"
>
</
asp:Content
>
<
asp:Content
ID
=
"Content2"
ContentPlaceHolderID
=
"FeaturedContent"
runat
=
"server"
>
</
asp:Content
>
<
asp:Content
ID
=
"Content3"
ContentPlaceHolderID
=
"MainContent"
runat
=
"server"
>
<
h2
><
asp:Literal
ID
=
"ltPageTitle"
runat
=
"server"
Text="<%$ Resources:NrttLanguage, Services %>"></
asp:Literal
></
h2
>
<
asp:DropDownList
ID
=
"ddlInterval"
runat
=
"server"
style
=
"text-align:right"
OnSelectedIndexChanged
=
"ddlInterval_SelectedIndexChanged"
AutoPostBack
=
"true"
>
<
asp:ListItem
Text
=
"30 days"
Value
=
"0"
/>
<
asp:ListItem
Text
=
"90 days"
Value
=
"1"
/>
<
asp:ListItem
Text
=
"Forever"
Value
=
"2"
/>
</
asp:DropDownList
>
<
br
/>
<
nrtt:DisplayClientDefinedField
runat
=
"server"
ID
=
"ucDisplayCDFS"
OnNeedCdfDefinitions
=
"ucDisplayCDFS_NeedCdfDataDefinition"
OnFilterChanged
=
"ucDisplayCDFS_FilterCDFS"
/>
<
telerik:RadGrid
ID
=
"rgExpiringServices"
OnNeedDataSource
=
"rgExpiringServices_NeedDataSource"
OnItemCommand
=
"rgExpiringServices_ItemCommand"
AllowFilteringByColumn
=
"true"
OnPreRender
=
"rgExpiringServices_PreRender"
runat
=
"server"
Skin
=
"Black"
AllowMultiRowSelection
=
"true"
OnItemDataBound
=
"rgExpiringServices_ItemDataBound"
AllowPaging
=
"true"
>
<
ClientSettings
Selecting-AllowRowSelect
=
"true"
Selecting-UseClientSelectColumnOnly
=
"true"
ClientEvents-OnRowSelected
=
"nestedGridRowSelected"
ClientEvents-OnRowDeselected
=
"nestedGridRowDeselected"
></
ClientSettings
>
<
MasterTableView
DataKeyNames
=
"ObjectId, Name"
AutoGenerateColumns
=
"false"
ShowFooter
=
"true"
HierarchyLoadMode
=
"ServerOnDemand"
EnableHierarchyExpandAll
=
"true"
AllowFilteringByColumn
=
"true"
>
<
Columns
>
<
telerik:GridClientSelectColumn
UniqueName
=
"BulkActionSelect"
HeaderText="<%$ Resources:NrttLanguage, BulkAction %>" ></
telerik:GridClientSelectColumn
>
<
telerik:GridButtonColumn
ButtonType
=
"ImageButton"
ButtonCssClass
=
"btnTiny btnApprove"
UniqueName
=
"Renew"
CommandName
=
"Renew"
ImageUrl
=
"~/Images/blank16.png"
HeaderStyle-Width
=
"16px"
ItemStyle-Width
=
"16px"
></
telerik:GridButtonColumn
>
<
telerik:GridButtonColumn
ButtonType
=
"ImageButton"
ButtonCssClass
=
"btnTiny btnDelete"
UniqueName
=
"Terminate"
CommandName
=
"Terminate"
ImageUrl
=
"~/Images/blank16.png"
HeaderStyle-Width
=
"16px"
ItemStyle-Width
=
"16px"
></
telerik:GridButtonColumn
>
<
telerik:GridNumericColumn
UniqueName
=
"Name"
DataField
=
"Name"
HeaderText="<%$ Resources:NrttLanguage, CustomerReference %>" DataType="System.String"> </
telerik:GridNumericColumn
>
<
telerik:GridDateTimeColumn
DataField
=
"DateExpiration"
DataType
=
"System.DateTime"
FilterControlAltText
=
"Filter DateImportant column"
HeaderText="<%$ Resources:NrttLanguage, DateExpiring%>" SortExpression="DateImportant" UniqueName="DateImportant" DataFormatString="{0:d}" >
</
telerik:GridDateTimeColumn
>
<
telerik:GridNumericColumn
UniqueName
=
"Daysuntilexpired"
DataField
=
"DaysUntilExpiration"
HeaderText="<%$ Resources:NrttLanguage, daysuntilexpired %>" > </
telerik:GridNumericColumn
>
<
telerik:GridBoundColumn
UniqueName
=
"Services"
DataField
=
"ServiceInReferenceString"
HeaderText="<%$ Resources:NrttLanguage, Services %>" ></
telerik:GridBoundColumn
>
<
telerik:GridNumericColumn
UniqueName
=
"Parcelcount"
DataField
=
"RealInReference"
HeaderText="<%$ Resources:NrttLanguage, ParcelCount %>" > </
telerik:GridNumericColumn
>
</
Columns
>
<
NestedViewTemplate
>
<
nrtt:CustomerGrid
ID
=
"ucExpiringRealServices"
runat
=
"server"
AllowSelection
=
"true"
OnNeedDataSource
=
"ucExpiringRealServices_NeedDataSource"
OnNeedColumnCollection
=
"ucExpiringRealServices_NeedColumnCollection"
OnItemDataBound
=
"ucExpiringRealServices_ItemDataBound"
></
nrtt:CustomerGrid
>
</
NestedViewTemplate
>
</
MasterTableView
>
</
telerik:RadGrid
>
<
div
style
=
"text-align:right"
>
<
asp:RadioButton
ID
=
"Extend"
Text
=
"Extend"
Checked
=
"true"
GroupName
=
"whattodo"
runat
=
"server"
/>
<
asp:RadioButton
ID
=
"Terminate"
Text
=
"Terminate"
Checked
=
"false"
GroupName
=
"whattodo"
runat
=
"server"
/>
<
telerik:RadButton
ID
=
"rbtnSubmitSelection"
runat
=
"server"
Text="<%$ Resources:NrttLanguage, RequestPayment %>" Skin="Black" SingleClick="true" OnClick="rbtnSubmitSelection_Click"></
telerik:RadButton
>
</
div
>
</
asp:Content
>
can someone tell me why this is not working? I am trying to puss the ID of the video to GetVideoDuration().
<script type=
"text/x-kendo-template"
id=
"template"
>
<div class=
"duration"
>
@{string VID =
"VID"
;}
@VID.Replace(
"Vimeo_ID"
,
"${VID}"
)
@MultimediaController.GetVideoDuration(VID)
</div>
</script>
Second line display the correct VID on every record. But when GetVideoDuration() is getting executed the value passed is VID string not the actual number.
multimedia controller.
public
static
string
GetVideoDuration(
string
VID)
{
string
strDuration =
string
.Empty;
}
I wish to exchange the radiobuttons in the default boolean filter with a checkbox.
I expected that there was a GridUIRole for this, but alas it was not so.
How would I go about this practically?
Hi,
I have a Kendo Tabstrip in which I use LoadContentFrom to load content from a controller action that return a PartialView. The code is
<% Html.Kendo().TabStrip()
.Name("TabStrip")
.Items(tabstrip =>
{
foreach (var pillar in Model.Evaluation.Pillars)
{
tabstrip.Add()
.Text("Name")
.LoadContentFrom("EvaluationFormPillar", "Evaluations", new { id = Model.Evaluation.Id, pillarId = pillar.Id,
hasActionItem = Model.Editable , editable = Model.Editable
});
}
})
.SelectedIndex(Model.SelectedTabIndex)
.Render();
%>
public ActionResult EvaluationFormPillar(int id, string pillarId, bool hasActionItem, bool editable)
{
var model = new EvaluationPillarViewModel();
Evaluation evaluation = this._evaluationsBL.GetEvaluation(id);
......
return PartialView(model);
}
But strangely enough, LoadContentFrom can't go to action "EvaluationFormPillar". It just displays a empty tabstrip with correct tab (set by SelectedIndex). Can anyone help me on this problem? Thanks.
Hi,
I'm not sure if i posted in the correct sub forum. But i have a problem using drawer as navigation menu. The menu links need to open the page in current tab/page. My code works ok in desktop browser but when test it on ipad it's opened in new tab. I have tried using the code from telerik documentation something like this:
<div data-role="drawer" data-views='["bar.html"]'>
<ul data-role="listview">
<li><a href="#foo">Foo</a></li>
<li><a href="bar.html">Bar</a></li>
</ul>
</div>
but the page wouldn't open correctly and just looks like a blank page. What am i doing wrong? Please someone help me.
I have attached my sample code as reference. Thank you.
Ady