protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { AddColumns(); ViewState["DataSet"] = GetData(); } } private void AddColumns() { GridBoundColumn colCustomerID = new GridBoundColumn(); GridBoundColumn colBirthDate = new GridBoundColumn(); GridBoundColumn colName = new GridBoundColumn(); GridBoundColumn colAddress = new GridBoundColumn(); GridBoundColumn colPhone = new GridBoundColumn(); GridBoundColumn colSalary = new GridBoundColumn(); GridBoundColumn colBoolTest = new GridBoundColumn(); rgDemo.Columns.Add(colCustomerID); rgDemo.Columns.Add(colBirthDate); rgDemo.Columns.Add(colName); rgDemo.Columns.Add(colAddress); rgDemo.Columns.Add(colPhone); rgDemo.Columns.Add(colSalary); rgDemo.Columns.Add(colBoolTest); colCustomerID.DataField = "EmployeeID"; colCustomerID.HeaderText = "EmployeeID"; colCustomerID.UniqueName = "EmployeeID"; colBirthDate.DataField = "BirthDate"; colBirthDate.HeaderText = "BirthDate"; colBirthDate.DataType = Type.GetType("System.DateTime"); colBirthDate.AllowFiltering = true; colBirthDate.UniqueName = "BirthDate"; colBirthDate.DataFormatString = "{0:MM/dd/yyyy}"; colName.DataField = "Name"; colName.HeaderText = "Name"; colName.UniqueName = "Name"; colAddress.DataField = "Address"; colAddress.HeaderText = "Address"; colAddress.UniqueName = "Address"; colPhone.DataField = "Phone"; colPhone.HeaderText = "Phone"; colPhone.UniqueName = "Phone"; colSalary.DataField = "Salary"; colSalary.HeaderText = "Salary"; colSalary.UniqueName = "Salary"; colBoolTest.DataField = "BoolTest"; colBoolTest.HeaderText = "BoolTest"; colBoolTest.DataType = typeof(Boolean); } private DataSet GetData() { DataSet _dsData = new DataSet(); DataTable _dtData = new DataTable("Employee"); DataColumn _dc1 = new DataColumn("EmployeeID", typeof(string)); DataColumn _dc2 = new DataColumn("BirthDate", typeof(DateTime)); DataColumn _dc3 = new DataColumn("Name", typeof(string)); DataColumn _dc4 = new DataColumn("Address", typeof(string)); DataColumn _dc5 = new DataColumn("Phone", typeof(string)); DataColumn _dc6 = new DataColumn("Salary", typeof(int)); DataColumn _dc7 = new DataColumn("BoolTest", typeof(int)); _dtData.Columns.Add(_dc1); _dtData.Columns.Add(_dc3); _dtData.Columns.Add(_dc2); _dtData.Columns.Add(_dc4); _dtData.Columns.Add(_dc5); _dtData.Columns.Add(_dc6); _dtData.Columns.Add(_dc7); for (int i = 0; i < 20; i++) { string index = Convert.ToString(i + 1); DataRow dr = _dtData.NewRow(); dr["EmployeeID"] = "E000" + index; dr["Name"] = "Employee " + index; dr["Address"] = "Address " + index; dr["Phone"] = "123-56789"; dr["Salary"] = Convert.ToString((i + 1) * 1000); dr["BirthDate"] = DateTime.Now.AddDays(i + 1); dr["BoolTest"] = (i % 2) == 0 ? true : false; _dtData.Rows.Add(dr); } _dsData.Tables.Add(_dtData); return _dsData; } protected void rgDemo_OnNeedDataSource(object source, GridNeedDataSourceEventArgs e) { //Write code to get data in DataSet ds DataSet _ds = (DataSet)ViewState["DataSet"]; rgDemo.VirtualItemCount = _ds.Tables[0].Rows.Count; rgDemo.DataSource = _ds; }ctrlRating.ItemCount = NumberOfStars;
The values assigned seem to be automatic (e.g. 1, 2, 3, 4, 5, 6, 7) and I would like to override them with my own values (0, 2, 4, 6, 8, 10, 12).
In this post: http://www.telerik.com/community/forums/aspnet-ajax/rating/tooltips-of-radrating.aspx
you say "That is why, I would recommend that you wrap the rating control in UpdatePanel and update the items in the Items collection server-side."
I have tried to update the items and always get an Index out of range error even in the first iteration.
ctrlRating.Items[numberOfStars - 1].Value = 33
Can you please provide an example of updating the item values using c sharp?
Thanks
<form id="form1" runat="server"> <telerik:RadScriptManager ID="RadScriptManager1" runat="server"> <Scripts> <%--Needed for JavaScript IntelliSense in VS2010--%> <%--For VS2008 replace RadScriptManager with ScriptManager--%> <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> <script type="text/javascript">
</script> <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server"> <AjaxSettings> <telerik:AjaxSetting AjaxControlID="RadMenu1"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="RadGrid1" UpdatePanelHeight="" /> </UpdatedControls> </telerik:AjaxSetting> </AjaxSettings> </telerik:RadAjaxManager> <telerik:RadSkinManager ID="RadSkinManager1" runat="server" Skin="Office2007"> </telerik:RadSkinManager> <div><script type="text/javascript"> function onClicking(sender, eventArgs) { var item = eventArgs.get_item(); var panel = $find("<%=RadXmlHttpPanel1.ClientID%>"); panel.set_value(item.ID); } } </script> <div class="divContainer"> <div class="divTreeView" style=""> <telerik:RadMenu ID="RadMenu1" runat="server" Width="200px" Skin="Office2007" onclientitemclicked="onClicking" > </telerik:RadMenu> </div> <div class="divXmlPanel"> <telerik:RadXmlHttpPanel ID="RadXmlHttpPanel1" runat="server" LoadingPanelID="RadAjaxLoadingPanel1" Value="01" OnServiceRequest="XmlHttpPanel_ServiceRequest" Height="267px" Width="548px" RenderMode="Block"> <telerik:RadGrid ID="RadGrid1" runat="server"> </telerik:RadGrid> </telerik:RadXmlHttpPanel> </div> </div> <div style="height: 31px; background: url('Images/foot_back.png') no-repeat;"> </div> <telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" runat="server" Skin="Office2007"> </telerik:RadAjaxLoadingPanel> </div> </form> private void BindMenu() { string sql = ""; var dt = new DataTable(); sql += " SELECT TOP (100) PERCENT PL_ID, Record_Title, Record_Parent, FROM database"; dt = data.GetDataTable(sql); if (dt.Rows.Count > 0) { RadMenu1.DataSource = dt; RadMenu1.DataTextField = "Record_Title"; RadMenu1.DataNavigateUrlField = ""; RadMenu1.DataFieldID = "PL_ID"; RadMenu1.DataFieldParentID = "Record_Parent"; RadMenu1.DataBind(); } else { RadGrid1.DataSource = null; }protected void XmlHttpPanel_ServiceRequest(object sender, RadXmlHttpPanelEventArgs e) { string dt = e.Value; BindGrid(dt); } private void BindGrid(string id) { string sql = ""; var dt = new DataTable(); sql += string.Format(" Select PL_ID, Record_Title, Record_Content, Record_Order_sort From database where (PL_ID = {0})", id); dt = data.GetDataTable(sql); if (dt.Rows.Count > 0) { RadGrid1.DataSource = dt; //RadGrid1.CurrentPageIndex = 0; Session["NeedsRebind"] = true; RadGrid1.DataBind(); } else { RadGrid1.DataSource = null; }<telerik:RadCodeBlock ID="rcb1" runat="server"> <script type="text/javascript"> function DisableSubmitBtn() { alert("Submitting Review, please do not click submit more than once");
document.getElementById('<% =btnItemSubmitE.ClientId %>').value = 'Submitting';
} </script></telerik:RadCodeBlock><telerik:RadButton ID="btnItemSubmitE" runat="server" Skin="Sunset" Text="Submit" Width="45%" ValidationGroup="Review" OnClientClicked="DisableSubmitBtn" > <Icon PrimaryIconCssClass="rbOk" PrimaryIconLeft="4" PrimaryIconTop="4" /> </telerik:RadButton>function run() { alert('run'); }
Hi All,
I have problem with RibbonBar, I have it on my page, it is added to ajaxmanager. The code on the page look like this
<telerik:RibbonBarTab Text="MyApp">
<telerik:RibbonBarGroup Text ="Docs">
<Items >
<telerik:RibbonBarButton ID="rbbHelp" Size="Large" Text="Help" ImageUrlLarge="Ikcsy/Png/Help.png" />
then in code file a have a fuction
protected void RadRibbonBar1_ButtonClick(object sender, RibbonBarButtonClickEventArgs e)
{
switch
(e.Button.Text.ToString())
{
case "Help":
try
{
Response.Clear();
Response.ContentType =
"text/pdf";
Response.AppendHeader("Content-Disposition", "attachment; filename=" + "HelpFile" + ".pdf" );
string file_path ="\\Help\\HelpFile.pdf";
Response.TransmitFile(file_path);
Response.End();
}
catch(Exception ex)
{
}
break;
}
}
after I clicked the button i get an error after Response.End :
ex = {Unable to evaluate expression because the code is optimized or a native frame is on top of the call stack.} and after this I get on page jscript error Sys.WebForms.PageRequestManagerParserErrorException. What can I do to download/transmit the file correctly ?
Regargs.
Tomek
<telerik:GridTemplateColumn HeaderText="Is Critical?" HeaderButtonType="TextButton" UniqueName="critical"> <ItemTemplate> <asp:CheckBox ID="chkCritical" runat="server" /> </ItemTemplate> </telerik:GridTemplateColumn>