找回密码
 立即注册

QQ登录

只需一步,快速开始

shapphhe

注册会员

18

主题

57

帖子

199

积分

注册会员

积分
199

[已处理] C1Map有关问题

shapphhe
注册会员   /  发表于:2017-7-31 11:15  /   查看:3965  /  回复:7
你好,最近在Winform中使用了C1Map控件,Sample中在地图上点击“Ctrl”+ 左键会添加标记。
请问一下,有没有提供类似的标签控件,点击地图时,可以存储Code与Name、Location等信息?

然后鼠标再点击此标签时,可以读取到所存储的信息?
谢谢解答!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

7 个回复

倒序浏览
JeffryLI
葡萄城公司职员   /  发表于:2017-7-31 14:10:32
沙发
您好,在sample中,我看到在添加Mark的时候里面有一个CustomShape属于是用来的做自定义的class,但需要继承CustomShape,我测试了下CustomShape没有扩展的接口来实现这个用户自定义数据。貌似这个还实现不了的。不好意思哈。

评分

参与人数 1满意度 +5 收起 理由
shapphhe + 5 赞一个!

查看全部评分

请点击评分,对我5分评价,谢谢!

葡萄城控件服务团队
官方网站: https://www.grapecity.com.cn/developer
回复 使用道具 举报
shapphhe
注册会员   /  发表于:2017-7-31 14:51:09
板凳
JeffryLI 发表于 2017-7-31 14:10
您好,在sample中,我看到在添加Mark的时候里面有一个CustomShape属于是用来的做自定义的class,但需要继承C ...

谢谢解答!
也就是说sample中鼠标点击地图只能设置标签与获取X、Y坐标,无法保存用户数据,那怎样获取即存的标签的X、Y坐标呢?(鼠标点击时)
回复 使用道具 举报
JeffryLI
葡萄城公司职员   /  发表于:2017-7-31 14:56:58
地板
shapphhe 发表于 2017-7-31 14:51
谢谢解答!
也就是说sample中鼠标点击地图只能设置标签与获取X、Y坐标,无法保存用户数据,那怎样获取即 ...

是的呢,这个我会把这个作为一个需求,反馈给产品组,看看后期会不会增加上来。谢谢您的支持与理解。

评分

参与人数 1满意度 +5 收起 理由
shapphhe + 5 很给力!

查看全部评分

请点击评分,对我5分评价,谢谢!

葡萄城控件服务团队
官方网站: https://www.grapecity.com.cn/developer
回复 使用道具 举报
shapphhe
注册会员   /  发表于:2017-7-31 15:01:52
5#
JeffryLI 发表于 2017-7-31 14:56
是的呢,这个我会把这个作为一个需求,反馈给产品组,看看后期会不会增加上来。谢谢您的支持与理解。

谢谢解答!的确,关于C1Map的属性和功能有点少,网上也很少能查到C1Map的应用案例。
回复 使用道具 举报
JeffryLI
葡萄城公司职员   /  发表于:2017-7-31 15:32:40
6#
shapphhe 发表于 2017-7-31 15:01
谢谢解答!的确,关于C1Map的属性和功能有点少,网上也很少能查到C1Map的应用案例。

我貌似找到一个能暂时解决您问题的方案,
1、您可以将信息format为string字符串存在VectorPlacemark的Tag属性里面,这个但是会像title一样鼠标hover会显示出来,
2、还有一种就是VectorPlacemark的Marker属性下有一个Caption的属性也是string类型,你也可以存在这里,这里不会显示出来。而且我测试了都能获取到,就是在您说的这个sample里面
  1. var mark = new C1.Win.Map.VectorPlacemark();
  2.             _layer.Items.Add(mark);

  3.             mark.Geometry = new GeoPoint(lon, lat);
  4.             mark.Marker.Size = new SizeF(20, 27.32f);
  5.             mark.Marker.Shape = MarkerShape.Custom;
  6.             mark.Marker.CustomShape = new MarkShape(_index++);
  7.             mark.Style.Stroke.Color = Color.DarkGray;
  8.             mark.Style.Stroke.Width = 1;
  9.             mark.Style.BackColor = GetRandomColor(128, 192);
  10.                         mark.Tag = "testTag";
  11.                         mark.Marker.Caption = "testCaption";
复制代码

评分

参与人数 1满意度 +5 收起 理由
shapphhe + 5 很给力!

查看全部评分

请点击评分,对我5分评价,谢谢!

葡萄城控件服务团队
官方网站: https://www.grapecity.com.cn/developer
回复 使用道具 举报
shapphhe
注册会员   /  发表于:2017-7-31 16:10:30
7#
JeffryLI 发表于 2017-7-31 15:32
我貌似找到一个能暂时解决您问题的方案,
1、您可以将信息format为string字符串存在VectorPlacemark的Ta ...

谢谢解答!
回复 使用道具 举报
JeffryLI
葡萄城公司职员   /  发表于:2017-7-31 17:33:28
8#

不客气的,我们应该的。
请点击评分,对我5分评价,谢谢!

葡萄城控件服务团队
官方网站: https://www.grapecity.com.cn/developer
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部