2013-12-18 2 views
1

asp.net 차트를 얻으려고하고 있으며 클릭 한 차트 조각의 값을 전달하는 다른 탭에서 다른 페이지를 열 수있게하는 것은 전설입니다. 그것으로. 다음 탭을 클릭하면 다른 탭을 열 수 있지만 데이터를 전달하지는 않습니다. 나는 URL 및 mapareaattributes을두면ASP.NET 차트 클릭, 데이터 전달 및 새 탭에서

Chart2.Series[0].LegendUrl = "chartdetails.aspx"; 
Chart2.Series[0].Url = "chartdetails.aspx"; 
Chart2.Series[0].LegendMapAreaAttributes="target=\"_blank\""; 
Chart2.Series[0].LegendPostBackValue = "#VALY-#VALX"; 
Chart2.Series[0].MapAreaAttributes="target=\"_blank\""; 
Chart2.Series[0].PostBackValue = "#VALY-#VALX"; 

것은 그때가 내가 데이터를 가져 세션 변수에 넣어 새로운 페이지를 엽니 다 Reponse.Redirect를 사용할 수 오전의 onclick에 가서 얻을 수 있습니다 세션 변수 데이터를 볼 수 있지만 다른 탭에서 열리지는 않지만 동일한 탭에서 열립니다.

Chart2.Series[0].LegendPostBackValue = "#VALY-#VALX"; 
Chart2.Series[0].PostBackValue = "#VALY-#VALX"; 

protected void Chart2_Click(object sender, ImageMapEventArgs e) 
{ 
    HttpContext.Current.Session["VAL"] = e.PostBackValue; 
    Response.Redirect("chartdetails.aspx", false); 
} 

어떻게 둘 다 할 수 있습니까? Response.Redirect에 새 탭을 여는 방법이 있습니까? 어떤 연구는 나를 믿을 수 없게 만듭니다. 거기에 서버 쪽 onclick 이벤트를 모두 얻을 수있는 방법, 그래서 세션 변수를 설정할 수 있습니다 및 서버 쪽 클릭 실행 후 chart.series.url 실행되도록 세션 변수를 새 탭을 열기 전에 설정됩니다. ?

"나는 내 케이크를 먹을 수 없다."라고 생각합니다.

답변

1

나도 내 케이크를 먹을 수있어. 내 Page_Load에 url, postbackvalues ​​및 legendmapareaattributes를 설정하고 차트를 클릭 할 때 세션 변수에 PostBackValue를 넣을 차트에 대한 클릭을 설정하면 PostBackValue에 나열된 세션 변수에 값이 저장됩니다. 차트의 시리즈. 그런 다음 세션 변수에서 정보에 액세스 할 수있는 새 탭 chartdetails.aspx에서 열립니다.

Chart2.Series[0].LegendUrl = "chartdetails.aspx"; 
Chart2.Series[0].LabelUrl = "chartdetails.aspx"; 
Chart2.Series[0].Url = "chartdetails.aspx"; 

Chart2.Series[0].LegendPostBackValue = "#VALY-#VALX"; 
Chart2.Series[0].LabelPostBackValue = "#VALY-#VALX"; 
Chart2.Series[0].PostBackValue = "#VALY-#VALX"; 

Chart2.Series[0].LegendMapAreaAttributes = "target=\"_blank\""; 
Chart2.Series[0].LabelMapAreaAttributes = "target=\"_blank\""; 
Chart2.Series[0].MapAreaAttributes="target=\"_blank\""; 

protected void Chart2_Click(object sender, ImageMapEventArgs e) 
{ 
    HttpContext.Current.Session["VAL"] = e.PostBackValue;     
} 
+0

또한 시리즈 지점 자체에서 Url 및 MapAreaAttributes를 설정할 수 있습니다. 시리즈를 만들 때이 작업을 수행 했으므로 차트 클릭 이벤트에서 세션 변수를 사용할 필요가 없었습니다. –