I am trying to get a dynamic RadWindow to display the loading icon. When I create the window declaratively or even programatically and add it to the RadWindowManager, the loading icon displays. But when I have instances where I am launching windows using the code below, the window displays with content (eventually), but while the content loads, I get a blank white screen. Is there a way to have the RadWindow display the loading icon if the window doesn't exist until it is launched?
01.
function
OpenDynamicWindow(title, url, width, height, closeArgument) {
02.
var
win = radopen(url,
null
, width, height, 0, 0);
03.
win.set_title(title);
04.
win.set_iconUrl(window.location.origin +
'/cws/images/cws_icon.ico'
);
05.
win.set_behaviors(Telerik.Web.UI.WindowBehaviors.Reload + Telerik.Web.UI.WindowBehaviors.Maximize + Telerik.Web.UI.WindowBehaviors.Move + Telerik.Web.UI.WindowBehaviors.Resize + Telerik.Web.UI.WindowBehaviors.Close);
06.
win.set_showContentDuringLoad(
false
);
07.
win.set_reloadOnShow(
true
);
08.
win.argument = closeArgument;
09.
win.add_close(CloseDynamicWindow);
10.
}
11.
12.
function
CloseDynamicWindow(sender, eventArgs) {
13.
$find(
'<%= ramPopWindow.ClientID%>'
).ajaxRequest(sender.argument);
14.
}
Hey folks,
This should be an easy one, but unfortunately not finding an easy way around it.
Problem Statement: When there are no visible characters in the input area, strip out all non-visible characters.
Details:
Our users can copy past from word files and or other sources, then they can decide to remove it.But this creates HTML equivalents of non-visible characters like 1) Tab, 2) whitespaces, 3)Carriage Returns or any other possible non-visible characters. My requirement is simple, if there are no visible characters, the input area should be reset to nothing or null.But in my case HTML equivalents of the above mentioned visible chars are saved which is not ideal.
I tied some JS to strip those using regular expressions, but not quite working, tried server side one too(c#) but it is messing up the visible content too. Is there a property I can set to make this working ?
Thanks for your help!
I am using Telerik UI for ASP.Net MVC Grid tabstrip. I have two tabs. Problem is that if the model.customerId has decimal in value then it does not call read actions like (.Read(read => read.Action("UserVouchers_Read", "Admin", new { customerId = "#=CustomerId#" }))). The type of customerId is string.
so if the customerId is "123456" then the controller action "UserVouchers_Read" is called.
if the customerId is "123456.123" then the controller action "UserVouchers_Read" is not called called.
Below is my code in the view. Please suggest what could be wrong here.
@(Html.Kendo().Grid<BSD.VoucherRedemption.Model.UserDataVM>()
.Name("Users")
.DataSource(dataSource => dataSource
.Ajax()
.ServerOperation(false)
.Read(read => read.Action("Users_Read", "Admin"))
.Events(events => events.Error("onError"))
)
.Columns(columns =>
{
columns.Bound(userData => userData.UserDataId).Visible(false);
columns.Bound(userData => userData.CustomerId).Title("Client ID");
columns.Bound(userData => userData.FirstName);
columns.Bound(userData => userData.CreatedDate).Title("Created Date");
})
.Pageable(pager => pager.Input(true).PageSizes(true))
.Sortable()
.Scrollable()
.Filterable()
.ClientDetailTemplateId("template")
.HtmlAttributes(new { style = "height:700px;" })
)
<script id="template" type="text/kendo-tmpl">
@(Html.Kendo().TabStrip()
.Name("tabStrip_#=CustomerId#")
.SelectedIndex(0)
.Animation(animation => animation.Open(open => open.Fade(FadeDirection.In)))
.Items(items =>
{
items.Add().Text("Voucher Information").Content(@<text>
@(Html.Kendo().Grid<BSD.VoucherRedemption.Model.UserVoucherVM>()
.Name("voucher_#=CustomerId#") // template expression, to be evaluated in the master context
.Columns(columns =>
{
columns.Bound(v => v.UserVoucherId).Width(90).Title("Voucher ID").Filterable(false);
columns.Bound(v => v.VoucherNo);
columns.Bound(v => v.VoucherValue).Visible(false);
columns.Bound(v => v.IsVoucherRedeemedStr).Title("Is Voucher Redeemed");
columns.Bound(v => v.CreatedDate).Title("Assigned Date");
})
.DataSource(dataSource => dataSource
.Ajax()
.PageSize(5)
.ServerOperation(false)
.Read(read => read.Action("UserVouchers_Read", "Admin", new { customerId = "#=CustomerId#" }))
)
.Pageable()
.Sortable()
.ToClientTemplate())
</text>
);
items.Add().Text("Email Activity").Content(@<text>
@(Html.Kendo().Grid<BSD.VoucherRedemption.Model.UserVoucherVM>()
.Name("email_#=CustomerId#") // template expression, to be evaluated in the master context
.Columns(columns =>
{
columns.Bound(v => v.UserVoucherId).Width(50).Title("Email ID").Filterable(false);
columns.Bound(v => v.CreatedDate).Width(50).Title("Email Sent Date");
})
.DataSource(dataSource => dataSource
.Ajax()
.PageSize(5)
.ServerOperation(false)
.Read(read => read.Action("UserEmails_Read", "Admin", new { customerId = "#=CustomerId#" }))
)
.Pageable()
.Sortable()
.ToClientTemplate())
</text>
);
})
.ToClientTemplate())
</script>
=========== Code in controller ==========
public ActionResult UserVouchers_Read(string customerID, [DataSourceRequest] DataSourceRequest request)
{
IEnumerable<Model.UserVoucherVM> userDataVM = userDataBusiness.GetUserVouchers(customerID);
return Json(userDataVM.ToDataSourceResult(request));
}
<b><telerik:RadTextBox ID="pName" runat="server" style="display:none" ></telerik:RadTextBox></b> |
document.getElementById('pName').style.display = ''; |
pName.Style.Add("display", "block"); |
I have a RadGrid with a NestedViewTemplate that contains a RadTabStrip and RadMultiPage. On each RadPageView there is another RadGrid that displays a sub-set of items related to the id of the item that is being expanded.
In addition, the columns of all RadGrids on the page are hidden/displayed according to a corresponding List<string> variable containing the column names that I want to be displayed. The columns are hidden in the grid_PreRender event IF their uniqueName is NOT in the list of column names.
I have two main problems:
The first problem is that while this _PreRender hiding of columns is working fine in the parent grid and any grid found in the first expanded row, any grids found in other expanded rows do not seem to be experiencing the PreRender event and therefore the columns that should be hidden are being displayed.
The second problem is that I need to be able to show/hide the columns on the client side when the user clicks on the corresponding checkbox in a RadTreeView containing all the columns of all the grids on the page. I have managed to get this working fine for the main grid and the first expanded row grids. The issue is that if multiple rows of the main grid are expanded then many instances of a child grid are displayed and I need client side code that can target all the displayed child grids and hide/show the selected column.
<
telerik:RadGrid
ID
=
"gvEventListing"
runat
=
"server"
PageSize
=
"10"
Skin
=
"Silk"
AllowSorting
=
"True"
AllowMultiRowSelection
=
"True"
AllowPaging
=
"True"
AllowCustomPaging
=
"True"
ShowGroupPanel
=
"True"
OnPreRender
=
"gvEventListing_PreRender"
AutoGenerateColumns
=
"False"
GridLines
=
"none"
OnGroupsChanging
=
"gvEventListing_GroupsChanging"
OnItemCommand
=
"gvEventListing_ItemCommand"
OnItemCreated
=
"gvEventListing_ItemCreated"
OnNeedDataSource
=
"gvEventListing_OnNeedDataSource"
OnItemDataBound
=
"gvEventListing_ItemDataBound"
>
<
PagerStyle
Mode
=
"NextPrevNumericAndAdvanced"
></
PagerStyle
>
<
MasterTableView
DataKeyNames
=
"IncidentSID,FacilityID"
AllowMultiColumnSorting
=
"True"
>
<
NestedViewTemplate
>
<
asp:Panel
runat
=
"server"
ID
=
"InnerContainer"
CssClass
=
"viewWrap"
Visible
=
"false"
>
<
telerik:RadTabStrip
Skin
=
"MetroTouch"
runat
=
"server"
ID
=
"TabStip1"
MultiPageID
=
"Multipage1"
SelectedIndex
=
"0"
OnClientTabSelecting
=
"OnClientTabSelectingHandler"
>
<
Tabs
>
<
telerik:RadTab
runat
=
"server"
Text
=
"Participants"
PageViewID
=
"PageView1"
>
</
telerik:RadTab
>
<
telerik:RadTab
runat
=
"server"
Text
=
"Comments"
PageViewID
=
"PageView2"
>
</
telerik:RadTab
>
<
telerik:RadTab
runat
=
"server"
Text
=
"Phase Progression"
PageViewID
=
"PageView3"
>
</
telerik:RadTab
>
<
telerik:RadTab
runat
=
"server"
Text
=
"Notifications"
PageViewID
=
"PageView4"
>
</
telerik:RadTab
>
<
telerik:RadTab
runat
=
"server"
Text
=
"Corrective Actions"
PageViewID
=
"PageView5"
>
</
telerik:RadTab
>
</
Tabs
>
</
telerik:RadTabStrip
>
<
telerik:RadMultiPage
runat
=
"server"
ID
=
"Multipage1"
SelectedIndex
=
"0"
RenderSelectedPageOnly
=
"False"
>
<
telerik:RadPageView
runat
=
"server"
ID
=
"PageView1"
Width
=
"100%"
>
<
telerik:RadGrid
runat
=
"server"
ID
=
"gvParticipants"
ShowFooter
=
"false"
Skin
=
"Silk"
OnPreRender
=
"gvParticipants_PreRender"
CssClass
=
"gvParticipants"
AllowSorting
=
"true"
EnableLinqExpressions
=
"false"
OnNeedDataSource
=
"gvParticipants_OnNeedDataSource"
>
<
MasterTableView
ShowHeader
=
"true"
AutoGenerateColumns
=
"False"
AllowPaging
=
"true"
DataKeyNames
=
"ParticipantSID"
PageSize
=
"7"
HierarchyLoadMode
=
"ServerOnDemand"
>
<
Columns
>
<
telerik:GridBoundColumn
SortExpression
=
"PersonID"
HeaderText
=
"PersonID"
HeaderButtonType
=
"TextButton"
DataField
=
"PersonID"
UniqueName
=
"PersonID"
></
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
SortExpression
=
"ParticipationTypeLabel"
HeaderText
=
"Participation"
HeaderButtonType
=
"TextButton"
DataField
=
"ParticipationTypeLabel"
UniqueName
=
"ParticipationTypeLabel"
></
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
SortExpression
=
"Name"
HeaderText
=
"Name"
HeaderButtonType
=
"TextButton"
DataField
=
"Name"
UniqueName
=
"Name"
></
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
SortExpression
=
"Identifier"
HeaderText
=
"Rec#/Emp ID"
HeaderButtonType
=
"TextButton"
DataField
=
"Identifier"
UniqueName
=
"Identifier"
></
telerik:GridBoundColumn
>
</
Columns
>
</
MasterTableView
>
<
ClientSettings
AllowDragToGroup
=
"true"
>
<
Scrolling
AllowScroll
=
"true"
ScrollHeight
=
""
/>
</
ClientSettings
>
<
PagerStyle
PageButtonCount
=
"3"
Mode
=
"NextPrevAndNumeric"
ShowPagerText
=
"false"
/>
</
telerik:RadGrid
>
</
telerik:RadPageView
>
protected void gvParticipants_PreRender(object sender, EventArgs e)
{
GridNestedViewItem item = (GridNestedViewItem)gvEventListing.MasterTableView.GetItems(GridItemType.NestedView)[0];
RadGrid grid = (RadGrid)item.FindControl("gvParticipants");
foreach (GridColumn col in grid.Columns)
{
if (!_fields_participants.Contains(col.UniqueName))
{
col.Display = false;
}
}
}
Good day Guys,
I have two radgrids on the same page one works perfectly fine with paging and datasource bindings.
The second grid works with the filtering of raddatepickers. So a user has to filer certain data using the datepickers eg. from "date" to "date". Please note that the datepickers are not inside the grid but outside. i also have a button which is used as click event after the user selecting dates
please see below code client side markup of the second grid which has a problem with the paging
and also the code behind for filtering and and binding to the grid. Im using linq to Sql
protected
void
btnfilter_Click(
object
sender, EventArgs e)
{
DateTime From = Convert.ToDateTime(RadDatePicker1.SelectedDate);
DateTime To = Convert.ToDateTime(RadDatePicker2.SelectedDate);
//rgApprovedTransactionsLists.MasterTableView.Rebind();
var AprrovedTrans = (from s
in
db.OneTimePins
join t
in
db.TransactionTypes on s.TransactionTypeID equals t.TransactionTypeID
join userapp
in
db.Users on s.ApprovedBy equals userapp.UserID
where (s.ApprovedDate >= From && s.ApprovedDate < To)
select
new
{
s.OneTimePinID,
t.TransactionType1,
s.PIN,
s.Amount,
s.WithdrawerID,
s.WithdrawDate,
s.ApprovedDate,
s.CancellationDate,
ApprovedBy = userapp.FirstName +
" "
+ userapp.LastName
});
rgApprovedTransactionsLists.DataSource = AprrovedTrans.ToList();
rgApprovedTransactionsLists.DataBind();
}
<
div
>
<
asp:Label
ID
=
"lblMessagefilter"
runat
=
"server"
></
asp:Label
>
</
div
>
<
table
>
<
tr
>
<
td
align
=
"center"
style
=
"width:50%;"
>
<
telerik:RadLabel
ID
=
"RadLabel1"
Text
=
"From :"
runat
=
"server"
>
</
telerik:RadLabel
>
<
telerik:RadDatePicker
RenderMode
=
"Lightweight"
ID
=
"RadDatePicker1"
DateInput-DateFormat
=
"dd-MM-yyyy"
runat
=
"server"
>
</
telerik:RadDatePicker
>
</
td
>
<
td
align
=
"center"
class
=
"auto-style1"
>
<
telerik:RadLabel
ID
=
"RadLabel2"
Text
=
"To :"
runat
=
"server"
>
</
telerik:RadLabel
>
<
telerik:RadDatePicker
RenderMode
=
"Lightweight"
ID
=
"RadDatePicker2"
DateInput-DateFormat
=
"dd-MM-yyyy"
runat
=
"server"
>
</
telerik:RadDatePicker
>
<
telerik:RadButton
ID
=
"RadButton1"
runat
=
"server"
Text
=
"filter"
OnClick
=
"btnfilter_Click"
Width
=
"100px"
>
</
telerik:RadButton
>
</
td
>
</
tr
>
</
table
>
- <
table
width
=
"700px"
>
<
tr
>
<
td
>
<
br
/>
</
td
>
</
tr
>
<
tr
>
<
td
>
<
telerik:RadGrid
ID
=
"rgApprovedTransactionsLists"
runat
=
"server"
AllowPaging
=
"true"
PagerStyle-AlwaysVisible
=
"true"
EnableViewState
=
"true"
PageSize
=
"10"
AllowSorting
=
"true"
OnPageIndexChanged
=
"rgApprovedTransactionsLists_PageIndexChanged"
OnPageSizeChanged
=
"rgApprovedTransactionsLists_PageSizeChanged"
OnNeedDataSource
=
"rgApprovedTransactionsLists_NeedDataSource"
Width
=
"1113px"
AutoGenerateColumns
=
"False"
>
<
MasterTableView
DataKeyNames
=
"OneTimePinID"
TableLayout
=
"Fixed"
FilterItemStyle-BorderStyle
=
"NotSet"
MultiHeaderItemStyle-VerticalAlign
=
"NotSet"
>
<
Columns
>
<
telerik:GridBoundColumn
Visible
=
"false"
DataField
=
"OneTimePinID"
HeaderText
=
"OneTimePinID"
AllowSorting
=
"true"
>
<
HeaderStyle
Width
=
"100px"
HorizontalAlign
=
"Center"
Font-Bold
=
"true"
/>
<
ItemStyle
HorizontalAlign
=
"Center"
/>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"TransactionType1"
HeaderText
=
"TransactionType"
AllowSorting
=
"true"
>
<
HeaderStyle
Width
=
"100px"
HorizontalAlign
=
"Center"
Font-Bold
=
"true"
/>
<
ItemStyle
HorizontalAlign
=
"Center"
/>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"PIN"
HeaderText
=
"One Time Pin"
AllowSorting
=
"true"
>
<
HeaderStyle
Width
=
"100px"
HorizontalAlign
=
"Center"
Font-Bold
=
"true"
/>
<
ItemStyle
HorizontalAlign
=
"Center"
/>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"Amount"
HeaderText
=
"Amount"
>
<
HeaderStyle
Width
=
"100px"
HorizontalAlign
=
"Center"
Font-Bold
=
"true"
/>
<
ItemStyle
HorizontalAlign
=
"Center"
/>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"WithdrawerID"
HeaderText
=
"WithdrawerID"
AllowSorting
=
"true"
>
<
HeaderStyle
Width
=
"100px"
HorizontalAlign
=
"Center"
Font-Bold
=
"true"
/>
<
ItemStyle
HorizontalAlign
=
"Center"
/>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"WithdrawDate"
HeaderText
=
"Withdraw Date"
AllowSorting
=
"true"
>
<
HeaderStyle
Width
=
"100px"
HorizontalAlign
=
"Center"
Font-Bold
=
"true"
/>
<
ItemStyle
HorizontalAlign
=
"Center"
/>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"ApprovedDate"
HeaderText
=
"Approved Date"
AllowSorting
=
"true"
>
<
HeaderStyle
Width
=
"100px"
HorizontalAlign
=
"Center"
Font-Bold
=
"true"
/>
<
ItemStyle
HorizontalAlign
=
"Center"
/>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"CancellationDate"
HeaderText
=
"Cancellation Date"
AllowSorting
=
"true"
>
<
HeaderStyle
Width
=
"100px"
HorizontalAlign
=
"Center"
Font-Bold
=
"true"
/>
<
ItemStyle
HorizontalAlign
=
"Center"
/>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"ApprovedBy"
HeaderText
=
"Approved By"
AllowSorting
=
"true"
>
<
HeaderStyle
Width
=
"100px"
HorizontalAlign
=
"Center"
Font-Bold
=
"true"
/>
<
ItemStyle
HorizontalAlign
=
"Center"
/>
</
telerik:GridBoundColumn
>
</
Columns
>
</
MasterTableView
>
</
telerik:RadGrid
>
</
td
>
</
tr
>
</
table
>
Help anyone will be appreciated
kind regards
Marc
Hi All,
I am using Telerik UI for ASP.Net MVC Grid tabstrip. I have two tabs. Problem is that if the model.customerId has decimal in value then it does not call read actions like (.Read(read => read.Action("UserVouchers_Read", "Admin", new { customerId = "#=CustomerId#" })))
so if the customerId is "123456" then the controller action "UserVouchers_Read" is called.
if the customerId is "123456.123" then the controller action "UserVouchers_Read" is not called called.
Below is my code in the view. Please suggest what could be wrong here.
@(Html.Kendo().Grid<BSD.VoucherRedemption.Model.UserDataVM>()
.Name("Users")
.DataSource(dataSource => dataSource
.Ajax()
.ServerOperation(false)
.Read(read => read.Action("Users_Read", "Admin"))
.Events(events => events.Error("onError"))
)
.Columns(columns =>
{
columns.Bound(userData => userData.UserDataId).Visible(false);
columns.Bound(userData => userData.CustomerId).Title("Client ID");
columns.Bound(userData => userData.FirstName);
columns.Bound(userData => userData.CreatedDate).Title("Created Date");
})
.Pageable(pager => pager.Input(true).PageSizes(true))
.Sortable()
.Scrollable()
.Filterable()
.ClientDetailTemplateId("template")
.HtmlAttributes(new { style = "height:700px;" })
)
<script id="template" type="text/kendo-tmpl">
@(Html.Kendo().TabStrip()
.Name("tabStrip_#=CustomerId#")
.SelectedIndex(0)
.Animation(animation => animation.Open(open => open.Fade(FadeDirection.In)))
.Items(items =>
{
items.Add().Text("Voucher Information").Content(@<text>
@(Html.Kendo().Grid<BSD.VoucherRedemption.Model.UserVoucherVM>()
.Name("voucher_#=CustomerId#") // template expression, to be evaluated in the master context
.Columns(columns =>
{
columns.Bound(v => v.UserVoucherId).Width(90).Title("Voucher ID").Filterable(false);
columns.Bound(v => v.VoucherNo);
columns.Bound(v => v.VoucherValue).Visible(false);
columns.Bound(v => v.IsVoucherRedeemedStr).Title("Is Voucher Redeemed");
columns.Bound(v => v.CreatedDate).Title("Assigned Date");
})
.DataSource(dataSource => dataSource
.Ajax()
.PageSize(5)
.ServerOperation(false)
.Read(read => read.Action("UserVouchers_Read", "Admin", new { customerId = "#=CustomerId#" }))
)
.Pageable()
.Sortable()
.ToClientTemplate())
</text>
);
items.Add().Text("Email Activity").Content(@<text>
@(Html.Kendo().Grid<BSD.VoucherRedemption.Model.UserVoucherVM>()
.Name("email_#=CustomerId#") // template expression, to be evaluated in the master context
.Columns(columns =>
{
columns.Bound(v => v.UserVoucherId).Width(50).Title("Email ID").Filterable(false);
columns.Bound(v => v.CreatedDate).Width(50).Title("Email Sent Date");
})
.DataSource(dataSource => dataSource
.Ajax()
.PageSize(5)
.ServerOperation(false)
.Read(read => read.Action("UserEmails_Read", "Admin", new { customerId = "#=CustomerId#" }))
)
.Pageable()
.Sortable()
.ToClientTemplate())
</text>
);
})
.ToClientTemplate())
</script>
I cannot for the life of me figure out how to add a local copy of the help files to my VS environment.
Per the Installation help, "The MSI installer unpacks the controls on your computer in a folder named Telerik in your Program Files. Additionally, the installer package adds the Telerik® UI for ASP.NET AJAX help files to your VS.NET IDE and to your local copy of MSDN (if you have one installed)."
I have run and re-run, repaired and updated from the MSI but no matter what I do, nothing shows up in my help viewer.
I've downloaded the ZIP installer and looked for the help installation in there, but to no avail.
Please help.
Thanks,
-- Matt