|
30铜板
//栅格图层属性表浏览 ,为什么红字体处说我没引入实例啊
IWorkspaceFactory rasterWorkspaceFactory = new RasterWorkspaceFactoryClass();
IRasterWorkspace rasterWorkspace = (IRasterWorkspace)rasterWorkspaceFactory.OpenFromFile(@"E:\gis", 0);
IRasterDataset rasterDataset = rasterWorkspace.OpenRasterDataset("栅格图");
IRasterLayer rasterLayer = new RasterLayerClass();
rasterLayer.CreateFromDataset(rasterDataset);
m_mapControl.AddLayer(rasterLayer, 0);
IRaster pRaster = rasterLayer.Raster;
IRasterProps pProp = pRaster as IRasterProps;
pProp.PixelType = rstPixelType.PT_LONG;
if (pProp.PixelType == rstPixelType.PT_LONG)
{
IRasterBandCollection pBcol = pRaster as IRasterBandCollection;
IRasterBand pBand = pBcol.Item(0);
ITable pRTable = pBand.AttributeTable;
DataTable pTable = new DataTable();
for (int i = 0; i < pRTable.Fields.FieldCount; i++)
pTable.Columns.Add(pRTable.Fields.get_Field(i).Name);
ICursor pCursor = pRTable.Search(null, false);
IRow pRrow = pCursor.NextRow();
while (pRrow != null)
{
DataRow pRow = pTable.NewRow();
for (int i = 0; i < pRrow.Fields.FieldCount; i++)
{
pRow = pRrow.get_Value(i).ToString();
}
pTable.Rows.Add(pRow);
pRrow = pCursor.NextRow();
}
file:///D:\qq\490282060\Image\C2C\KUJZODE@)Q_FC]DKWJ~0H%O.pngfile:///D:\qq\490282060\Image\C2C\KUJZODE@)Q_FC]DKWJ~0H%O.png
|
|