Никита
6 years ago
5 changed files with 132 additions and 84 deletions
@ -1,47 +0,0 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.ComponentModel; |
|||
using System.Data; |
|||
using System.Drawing; |
|||
using System.Linq; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using System.Windows.Forms; |
|||
|
|||
namespace fileFinder |
|||
{ |
|||
public partial class MainForm : Form |
|||
{ |
|||
public MainForm() |
|||
{ |
|||
InitializeComponent(); |
|||
} |
|||
|
|||
private void dirSelectBtn_Click(object sender, EventArgs e) |
|||
{ |
|||
using (var dialog = new FolderBrowserDialog()) |
|||
{ |
|||
DialogResult result = dialog.ShowDialog(); |
|||
if (result == DialogResult.OK && !String.IsNullOrWhiteSpace(dialog.SelectedPath)) |
|||
{ |
|||
curDirTextBox.Text = dialog.SelectedPath; |
|||
hintHided = true; |
|||
} |
|||
} |
|||
} |
|||
|
|||
bool hintHided = false; |
|||
private void curDirTextBox_Enter(object sender, EventArgs e) |
|||
{ |
|||
if (!hintHided) |
|||
{ |
|||
hintHided = true; |
|||
curDirTextBox.Text = ""; |
|||
} |
|||
} |
|||
|
|||
|
|||
|
|||
|
|||
} |
|||
} |
@ -0,0 +1,99 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.ComponentModel; |
|||
using System.Data; |
|||
using System.Drawing; |
|||
using System.Linq; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using System.Windows.Forms; |
|||
using System.IO; |
|||
|
|||
namespace fileFinder |
|||
{ |
|||
public partial class MainForm : Form |
|||
{ |
|||
public MainForm() |
|||
{ |
|||
InitializeComponent(); |
|||
try |
|||
{ |
|||
ImageList iconList = new ImageList(); |
|||
iconList.Images.Add(Image.FromFile("Folder.png")); // 0
|
|||
iconList.Images.Add(Image.FromFile("OpenedFolder.png")); // 1
|
|||
iconList.Images.Add(Image.FromFile("File.png")); // 2
|
|||
iconList.Images.Add(Image.FromFile("Search.png")); // 3
|
|||
resultViewer.ImageList = iconList; |
|||
resultViewer.ImageIndex = 3; |
|||
resultViewer.SelectedImageIndex = 3; |
|||
} catch { } |
|||
|
|||
} |
|||
|
|||
private void dirSelectBtn_Click(object sender, EventArgs e) |
|||
{ |
|||
using (var dialog = new FolderBrowserDialog()) |
|||
{ |
|||
DialogResult result = dialog.ShowDialog(); |
|||
if (result == DialogResult.OK && !String.IsNullOrWhiteSpace(dialog.SelectedPath)) |
|||
{ |
|||
curDirTextBox.Text = dialog.SelectedPath; |
|||
hintHided = true; |
|||
} |
|||
} |
|||
} |
|||
|
|||
bool hintHided = false; |
|||
private void curDirTextBox_Enter(object sender, EventArgs e) |
|||
{ |
|||
if (!hintHided) |
|||
{ |
|||
hintHided = true; |
|||
curDirTextBox.Text = ""; |
|||
} |
|||
} |
|||
|
|||
private void handleSearchBtn_Click(object sender, EventArgs e) |
|||
{ |
|||
resultViewer.Nodes.Clear(); |
|||
List<String> foundFiles = new List<String>(); |
|||
TreeNode itemsNode = new TreeNode(); |
|||
|
|||
try |
|||
{ |
|||
foundFiles = Directory.GetFiles(curDirTextBox.Text, queryTextBox.Text, SearchOption.AllDirectories).ToList<String>(); |
|||
} catch { } |
|||
|
|||
foreach (String item in foundFiles) |
|||
fillChildNode(itemsNode, item.Replace(curDirTextBox.Text, "")); |
|||
|
|||
resultViewer.Nodes.Add(itemsNode); |
|||
} |
|||
|
|||
public void fillChildNode (TreeNode node, String item) |
|||
{ |
|||
int backSlashIndex = item.IndexOf("\\"); |
|||
if (backSlashIndex > -1) |
|||
{ |
|||
if (backSlashIndex == 0) |
|||
{ |
|||
item = item.Remove(0, 1); |
|||
backSlashIndex = item.IndexOf("\\"); |
|||
} |
|||
String currentNodeName = item.Substring(0, backSlashIndex); |
|||
int nodeIndex = node.Nodes.IndexOfKey(currentNodeName); |
|||
if (nodeIndex != -1) |
|||
fillChildNode(node.Nodes[nodeIndex], item.Remove(0, backSlashIndex + 1)); |
|||
else |
|||
{ |
|||
node.Nodes.Add(currentNodeName, currentNodeName, 0, 0); |
|||
nodeIndex = node.Nodes.IndexOfKey(currentNodeName); |
|||
fillChildNode(node.Nodes[nodeIndex], item.Remove(0, backSlashIndex + 1)); |
|||
} |
|||
} else |
|||
node.Nodes.Add(item, item, 2, 2); |
|||
} |
|||
|
|||
|
|||
} |
|||
} |
Loading…
Reference in new issue