解决方案 »
- 用一台主机同时监控多台客机的桌面?
- GridView中如何为某列用代码添加CheckBox等控件
- vs编写的C#程序的winform小程序,为何打包后的setup在有些电脑上无法运行!
- 多个socket并发工作的问题.
- the current thread is in a stack overflow state.
- 谁知道远程关机的命令是什么啊?
- 关于定时器的问题,请高手帮忙。急!!!!
- 如何实现控件对象的子类化(Like VC)????
- 如何在C#中取得主板的序列号?
- 求 Quoted-Printable,8bit编码方式的解码函数
- 如何抓取查询结果中的列表信息
- java代码转换为C#代码的问题.
字段赋值 使用 pTarFeatureBuffer.set_Value(int 字段索,引object 字段值 ) private static bool StartEdit(IFeatureClass trgFC)
{
IDataset pDataset = (IDataset)trgFC;
IWorkspace pWorkspace = pDataset.Workspace; if (pWorkspace == null) return false; IFeatureWorkspace pFeatureWorkspace = pWorkspace as IFeatureWorkspace;
IWorkspaceEdit pWE = pFeatureWorkspace as IWorkspaceEdit;
if (!pWE.IsBeingEdited())
{
IVersionedObject pVersioned = pDataset as IVersionedObject; if (pVersioned == null || !pVersioned.IsRegisteredAsVersioned)
{
IMultiuserWorkspaceEdit pMulti = pFeatureWorkspace as IMultiuserWorkspaceEdit;
if (pMulti != null)
{
if (pMulti.SupportsMultiuserEditSessionMode(esriMultiuserEditSessionMode.esriMESMNonVersioned))
{
try
{
pMulti.StartMultiuserEditing(esriMultiuserEditSessionMode.esriMESMNonVersioned);
}
catch (Exception)
{
pWE.StartEditing(false);
}
}
else
{
pWE.StartEditing(false);
}
}
else
{
pWE.StartEditing(false);
}
}
else
{
pWE.StartEditing(false);
} if (pWE.IsBeingEdited() == false) return false;
}
pWE.StartEditOperation();
return true;
} private static void StopEdit(IFeatureClass trgFC, bool isSave)
{
IDataset pDataset = (IDataset)trgFC;
IWorkspace pWorkspace = pDataset.Workspace;
if (pWorkspace == null) return;
IWorkspaceEdit pWE = null;
IFeatureWorkspace pFeatureWorkspace = pWorkspace as IFeatureWorkspace;
pWE = pFeatureWorkspace as IWorkspaceEdit;
if (pWE.IsBeingEdited())
{
pWE.StopEditOperation();
pWE.StopEditing(isSave); //保存慢呀!
}
}
我提供的代码会生成三个文件(.dbf, .shx, .shp)。同样的代码逻辑,几年以前是VB6+ArcGIS9.2,插入的汉字和字母等都可以正常显示在.dbf属性文件里,现在升级到C#+ArcGIS10.0后,字母可以正常显示,汉字却不能显示了。
请各位高手结合我的代码,给诊断病情。等待各位高手出诊