FileInfo file = new FileInfo(lvControl.SelectedItems[0].Text);
TreeNode node = new TreeNode(file.Name); //文件名作为节点文本
node.Tag = file.FullName; //完整路径存放在Tag属性里面这样node.tag.tostring()与打开文件对话框的dlg.filename为什么不能一样的使用?怎么改?下为完整代码,此为listview项目双击事件 public void listview1_ItemActivate(object sender, EventArgs e)
{
string sfileName = "";
ListView lvControl = (ListView)sender;
sfileName = lvControl.SelectedItems[0].Tag == null ? "" : lvControl.SelectedItems[0].Tag.ToString();
if (sfileName == "")
{
Form1 f = new Form1();
IWorkspaceFactory pWorkspaceFactory;
IFeatureWorkspace pFeatureWorkspace;
IFeatureLayer pFeatureLayer; //获取当前路径和文件名
FileInfo file = new FileInfo(lvControl.SelectedItems[0].Text);
TreeNode node = new TreeNode(file.Name); //文件名作为节点文本
node.Tag = file.FullName; //完整路径存放在Tag属性里面
string strFullPath = node.Tag.ToString;
if (strFullPath == "") return;
int Index = strFullPath.LastIndexOf("\\");
string filePath = strFullPath.Substring(0, Index);
string fileName = strFullPath.Substring(Index + 1);
textBox1.Text = filePath;
textBox2.Text = fileName; //打开工作空间并添加shp文件
pWorkspaceFactory = new ShapefileWorkspaceFactoryClass();
pFeatureWorkspace = (IFeatureWorkspace)pWorkspaceFactory.OpenFromFile(filePath, 0);
pFeatureLayer = new FeatureLayerClass(); pFeatureLayer.FeatureClass = pFeatureWorkspace.OpenFeatureClass(fileName);
pFeatureLayer.Name = pFeatureLayer.FeatureClass.AliasName;
axMapControl1.Map.AddLayer(pFeatureLayer);
axMapControl1.ActiveView.Refresh();
}
else
{
GetFolderTreeView(sfileName);
}
}
TreeNode node = new TreeNode(file.Name); //文件名作为节点文本
node.Tag = file.FullName; //完整路径存放在Tag属性里面这样node.tag.tostring()与打开文件对话框的dlg.filename为什么不能一样的使用?怎么改?下为完整代码,此为listview项目双击事件 public void listview1_ItemActivate(object sender, EventArgs e)
{
string sfileName = "";
ListView lvControl = (ListView)sender;
sfileName = lvControl.SelectedItems[0].Tag == null ? "" : lvControl.SelectedItems[0].Tag.ToString();
if (sfileName == "")
{
Form1 f = new Form1();
IWorkspaceFactory pWorkspaceFactory;
IFeatureWorkspace pFeatureWorkspace;
IFeatureLayer pFeatureLayer; //获取当前路径和文件名
FileInfo file = new FileInfo(lvControl.SelectedItems[0].Text);
TreeNode node = new TreeNode(file.Name); //文件名作为节点文本
node.Tag = file.FullName; //完整路径存放在Tag属性里面
string strFullPath = node.Tag.ToString;
if (strFullPath == "") return;
int Index = strFullPath.LastIndexOf("\\");
string filePath = strFullPath.Substring(0, Index);
string fileName = strFullPath.Substring(Index + 1);
textBox1.Text = filePath;
textBox2.Text = fileName; //打开工作空间并添加shp文件
pWorkspaceFactory = new ShapefileWorkspaceFactoryClass();
pFeatureWorkspace = (IFeatureWorkspace)pWorkspaceFactory.OpenFromFile(filePath, 0);
pFeatureLayer = new FeatureLayerClass(); pFeatureLayer.FeatureClass = pFeatureWorkspace.OpenFeatureClass(fileName);
pFeatureLayer.Name = pFeatureLayer.FeatureClass.AliasName;
axMapControl1.Map.AddLayer(pFeatureLayer);
axMapControl1.ActiveView.Refresh();
}
else
{
GetFolderTreeView(sfileName);
}
}
TreeView1.Nodes.Clear();
if (Path1.Text.Trim () == "")
{
myclass.msg("无法显示文件列表 请输入文件路径! ");
return;
}
else
{
file_dir = Path1.Text + "\\";
}
try
{
file_url = file_dir;
string temp_file_url = file_url;
DirectoryInfo dirinfo = new DirectoryInfo(file_dir); FileInfo fi;
string file_mess;
foreach (FileSystemInfo fsi in dirinfo.GetFileSystemInfos())
{
if (fsi is FileInfo)
{
fi = (FileInfo)fsi;
file_mess = fi.Name.ToString(); tn = new TreeNode();
tn.ShowCheckBox = true;
tn.Value = file_mess;
tn.NavigateUrl = file_url;
tn.Target = "_blank";
TreeView1.Nodes.Add(tn);
}
}
}
catch
{
myclass.msg("无法显示文件列表 请输入正确的文件路径! ");
return; }