簡體   English   中英

Telerik RadChart繼續加載

[英]Telerik RadChart keeps loading

我有一個問題,我的RadChart在本地完美加載,但在我部署后它只是保持加載但不運行。 我沒有進入實際的圖表屏幕。

我在整個過程之后放了一個消息框,這個消息框出現了,所以我確信已經到達了代碼的結尾。 我只是不知道為什么屏幕沒有完成加載。

有任何想法嗎?

碼:

protected void btnSearch_OnClick(object sender, ImageClickEventArgs e) {

            try
            {

                RadChartPOByFactory.Chart.Series.RemoveSeries();

                RadChartPOByFactory.ClientSettings.ScrollMode = Telerik.Web.UI.ChartClientScrollMode.Both;

                RadChartPOByFactory.DataManager.ValuesXColumn = "FactoryID";
                RadChartPOByFactory.DataManager.ValuesYColumns = new String[] { "Value" };
                RadChartPOByFactory.DataGroupColumn = "Year";
                RadChartPOByFactory.PlotArea.XAxis.DataLabelsColumn = "Factory";
                RadChartPOByFactory.Legend.Appearance.GroupNameFormat = "#VALUE";

                RadChartPOByFactory.PlotArea.YAxis.Appearance.CustomFormat = "$#,##0,,.00M;;K";

                var poReportRawData = from r in report.GetPOHeader_POByFactory_Report(ddlYearFrom.SelectedValue, ddlYearTo.SelectedValue) 
                                      select new { 
                                          Year = r.Year.ToString(), 
                                          Factory = r.Factory, 
                                          Value = r.AmountWithDiscount.Value };

                var factoryRawIDs = (from f in poReportRawData select f.Factory).Distinct();
                List<ListItem> factoryIDs = new List<ListItem>();
                int i = 1;
                foreach (string s in factoryRawIDs.ToList())
                {
                    factoryIDs.Add(new ListItem(s, i.ToString()));
                    i++;
                }

                var poReportData = from po in poReportRawData.ToList() 
                                   select new { 
                                       Year = po.Year, 
                                       FactoryID = factoryIDs.Where(f => f.Text == po.Factory).FirstOrDefault().Value, 
                                       Value = po.Value, 
                                       Factory = po.Factory };

                RadChartPOByFactory.DataSource = poReportData.ToList();
                RadChartPOByFactory.DataBind();

                foreach (ChartSeries cs in RadChartPOByFactory.Series)
                {   
                    cs.DefaultLabelValue = "$#Y{#,##0,}K (#%{#0.###%})";

                    cs.Appearance.LabelAppearance.LabelLocation = StyleSeriesItemLabel.ItemLabelLocation.Inside;
                    cs.Appearance.LabelAppearance.Position.AlignedPosition = AlignedPositions.Center;
                    cs.Appearance.LabelAppearance.RotationAngle = 0;

                }

                RadChartPOByFactory.Visible = true;
            }
            catch(ExceptionHandler ex)
            {
                WriteJSHandledException(ex);
            }

        }

此代碼也運行:

protected void RadChartPOByFactory_OnBeforeLayout(object sender, System.EventArgs e) {

            foreach (Telerik.Charting.LabelItem RadChartLegendLabelItem in RadChartPOByFactory.Legend.Items.OrderBy(a=>a.Name)) {
                //Remove the top-most item (which then decrements the item count of the legend) 
                RadChartPOByFactory.Legend.Items.RemoveAt(0);
                //Insert the new (reversed) legend item at the end of the list 
                RadChartPOByFactory.Legend.Items.Insert(RadChartPOByFactory.Legend.Items.Count, RadChartLegendLabelItem);
            }


            foreach (Telerik.Charting.ChartSeries RadChartSerie in RadChartPOByFactory.Chart.Series.OrderBy(a => a.Name)) {

                RadChartSerie.Items.OrderBy(a => a.Parent.Name);

                //Remove the top-most item (which then decrements the item count of the legend) 
                RadChartPOByFactory.Chart.Series.RemoveAt(0);
                //Insert the new (reversed) legend item at the end of the list 
                RadChartPOByFactory.Chart.Series.Insert(RadChartPOByFactory.Chart.Series.Count, RadChartSerie);

            }

            foreach (Telerik.Charting.ChartSeries RadChartSerie in RadChartPOByFactory.Chart.Series.OrderBy(a => a.Name)) {

                foreach (ChartSeriesItem RadChartSerieItem in RadChartSerie.Items.OrderBy(b => b.Name)) {
                    //Remove the top-most item (which then decrements the item count of the legend) 
                    RadChartSerie.Items.RemoveAt(0);
                    //Insert the new (reversed) legend item at the end of the list 

                    string tmpTextBlock = RadChartSerieItem.Label.TextBlock.Text;
                    string[] toMillion = tmpTextBlock.Split(' ');

                    string tmpValue = toMillion[0].Substring(1, toMillion[0].Length - 2);
                    decimal tmpInt = decimal.Parse(tmpValue);

                    if (tmpInt >= 1000) {
                        RadChartSerieItem.Label.TextBlock.Text = tmpInt.ToString("$#,##0,.00M") + " " + toMillion[1];
                    }

                    RadChartSerie.Items.Insert(RadChartSerie.Items.Count, RadChartSerieItem);
                }

            }             
        }

如果您無法看到頁面中顯示的chart imagecheck to see您是否在Web.Config registered the correct version of the HTTP Handler ,或者在設計時通過智能標記添加HTTP Handler

需要manually register the RadControls "HttpHandlers" ,或使用IIS administration功能。 manual registration按以下方式完成:( (In web.config file)

<system.web>
…
<httpHandlers>
…  
    <add path="Telerik.Web.UI.DialogHandler.aspx" verb="*" type="Telerik.Web.UI.DialogHandler, Telerik.Web.UI" validate="false" />
 …
</httpHandlers>
</system.web>
<system.webServer>
<handlers>
 …
</handlers>
</system.webServer>

有關HTTP Handlers手動注冊或IIS7功能的更多詳細信息,請單擊此處

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM