一个关于地图的问题,帮我解决下,急急!!!

一切为了你 2010-05-17 02:42:35
在Winform中, 我做了个卫星地位系统,现在要实现一个功能:我点击地图中的一辆汽车(有车牌号),就是根据这个车牌号去DB中查询这车的详细情况,并显示在地图中的车旁边,会的帮我!要代码!(C#代码)!!!
...全文
109 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
hengsf2008 2010-08-05
  • 打赏
  • 举报
回复
这有啥啊,直接加一个groupbox,里面存放DB检索的信息就可以了。
nbhx2010 2010-05-18
  • 打赏
  • 举报
回复
很好搞的啊
GIS属性查询的基本功能而已
你的地图是什么格式的?
我刚写过arcgis类似的代码,不过不是汽车


IArray pIDArray;
IFeatureIdentifyObj pFeatIdObj;
IIdentifyObj pIdObj;

//实际地图中图层第6层是信号机层
IFeatureLayer pLayer = axMapControl1.get_Layer(5) as IFeatureLayer;
IIdentify pIdentify = (IIdentify)axMapControl1.get_Layer(5);
IActiveView pActiveView = axMapControl1.ActiveView;
IMap pMap = axMapControl1.Map;
IEnvelope pEnv = axMapControl1.TrackRectangle();

IFeatureClass pFC = pLayer.FeatureClass;
pLayer.Name = pFC.AliasName;
ILayerFields pLayerFields = pLayer as ILayerFields;

if (pEnv.IsEmpty == true)
{
tagRECT r;
r.bottom = e.y + 5;
r.top = e.y - 5;
r.left = e.x - 5;
r.right = e.x + 5;
pActiveView.ScreenDisplay.DisplayTransformation.TransformRect(pEnv, ref r, 4);
pEnv.SpatialReference = pActiveView.FocusMap.SpatialReference;
}
pMap.SelectByShape(pEnv, null, false);
pActiveView.Refresh();

//用于显示到datagridview各个中间过程
DataSet ds = new DataSet("dsAttribute");
DataTable dt = new DataTable(pLayer.Name);
DataColumn dc = null;
//属性查询
pIDArray = pIdentify.Identify(pEnv);
if (pIDArray != null)
{
DataRow dr = dt.NewRow();
for (int i = 0; i <= pIDArray.Count; i++)
{
pFeatIdObj = (IFeatureIdentifyObj)pIDArray.get_Element(i);
pIdObj = (IIdentifyObj)pFeatIdObj;
IRowIdentifyObject pRowObj = pFeatIdObj as IRowIdentifyObject;
IFeature pFeature = pRowObj.Row as IFeature;

if (pFeature != null)
{
//表头
for (int k = 0; k < pFeature.Table.Fields.FieldCount; k++)
{
dc = new DataColumn(pFeature.Table.Fields.get_Field(k).Name.ToString());
dt.Columns.Add(dc);
dc = null;
}
//各个column的值
for (int j = 0; j < pFeature.Table.Fields.FieldCount; j++)
{
dr[j] = pFeature.get_Value(j).ToString();
}
dt.Rows.Add(dr);
ds.Tables.Add(dt);
dataGridView1.DataSource = ds.Tables[pLayer.Name];
//显示dataGridView(用以显示监控点属性)
dataGridView1.Columns[0].Visible = false;
dataGridView1.Columns[1].Visible = false;
dataGridView1.Show();
}
}
}
-小蕾- 2010-05-18
  • 打赏
  • 举报
回复
帮顶!!
一切为了你 2010-05-18
  • 打赏
  • 举报
回复
现在这个功能暂时不做了?我不会搞!!先缓缓!!
zhiboyi 2010-05-17
  • 打赏
  • 举报
回复
你做的地图能不能让我也学习一下。

另外,你可以做一个用户控件,里面放一个文本框,用于实时去数据库里找车辆信息,并存放你实时取到车辆信息,然后
在你鼠标移动事件中,加载你的用户控件或关闭你的用户控件。

希望交流一下地图制作,

zhiboyi@yeah.net
noway8881 2010-05-17
  • 打赏
  • 举报
回复
[Quote=引用楼主 skydemo 的回复:]
在Winform中, 我做了个卫星地位系统,现在要实现一个功能:我点击地图中的一辆汽车(有车牌号),就是根据这个车牌号去DB中查询这车的详细情况,并显示在地图中的车旁边,会的帮我!要代码!(C#代码)!!!
[/Quote]

什么地图有车牌号?
lsuperdavid 2010-05-17
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 doubleu2005 的回复:]
引用楼主 skydemo 的回复:
在Winform中, 我做了个卫星地位系统,现在要实现一个功能:我点击地图中的一辆汽车(有车牌号),就是根据这个车牌号去DB中查询这车的详细情况,并显示在地图中的车旁边,会的帮我!要代码!(C#代码)!!!

强!
到今天我才觉得我好傻好天真
[/Quote]
我更觉得自己
doubleu2005 2010-05-17
  • 打赏
  • 举报
回复
[Quote=引用楼主 skydemo 的回复:]
在Winform中, 我做了个卫星地位系统,现在要实现一个功能:我点击地图中的一辆汽车(有车牌号),就是根据这个车牌号去DB中查询这车的详细情况,并显示在地图中的车旁边,会的帮我!要代码!(C#代码)!!!
[/Quote]
强!
到今天我才觉得我好傻好天真
wangwenzhuang 2010-05-17
  • 打赏
  • 举报
回复
gis?不会,帮顶
tupic168 2010-05-17
  • 打赏
  • 举报
回复
这么强悍啊!我连地图都不会搞啊!呵呵

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧