微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ArcGIS API for Silverlight 点击地图上的要素,弹出窗口使用Telerik RadWindow

xmlns:telerikNavigation="clr-namespace:Telerik.Windows.Controls;assembly=Telerik.Windows.Controls.Navigation"
xmlns:telerik="clr-namespace:Telerik.Windows.Controls;assembly=Telerik.Windows.Controls"

 <!-- 详情信息显示窗口-->
<telerikNavigation:radwindow x:Name="radwindow1"  Tag="详情" BorderBackground="#B4DEFE" Width="520"   Height="330"  LocationChanged="radwindow1_LocationChanged" WindowState="Maximized">
         <telerik:RadHtmlPlaceholder x:Name="moreInfo" SourceUrl="" />
</telerikNavigation:radwindow>

#region 处理弹出窗口公共类

        public void ClickOpenDetailInfo(string name,string url)
        {
            TextBlock textBlock = new TextBlock();
            moreInfo.Height = 541;
            moreInfo.sourceUrl = new Uri(url,UriKind.Relative);
            string tmp = string.Empty;
             tmp = name + "详细信息";
            StringBuilder sb = new StringBuilder();
            for (int i = 0; i < tmp.Length; i++)
            {
                sb.Append(tmp[i] + " ");
            }
            textBlock.Text = sb.ToString();
            textBlock.FontSize = 16;
            textBlock.FontWeight = FontWeights.Black;
            SolidColorBrush scbrush = new SolidColorBrush();
            scbrush.Color = Colors.Black;
            textBlock.Foreground = scbrush;

            textBlock.HorizontalAlignment = HorizontalAlignment.Center;
            radwindow1.Header = textBlock;
            radwindow1.Show();
        }


        private void radwindow1_LocationChanged(object sender,RoutedEventArgs e)
        {
            moreInfo.InvalidateArrange();
        }


        #endregion

//左键菜单
graphic.MouseLeftButtonDown += new MouseButtonEventHandler(sw_graphic_MouseLeftButtonDown);
 graphic.MouseLeftButtonUp += new MouseButtonEventHandler(sw_graphic_MouseLeftButtonUp);

void sw_graphic_MouseLeftButtonDown(object sender,MouseButtonEventArgs e)
{
         e.Handled = true;
}

 void sw_graphic_MouseLeftButtonUp(object sender,MouseButtonEventArgs e)
 {
            Graphic g = sender as Graphic;
            string url = "../ysq/page2.aspx?stype=2&ylz=" + HttpUtility.UrlEncode(g.Attributes["YLZMC"].ToString());
            //弹出窗体
            ClickOpenDetailInfo(g.Attributes["YLZMC"].ToString(),url);
}


效果如下图,这个窗口能保证每次只弹出一个

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐