QuickImage – Rev 1
?pathlinks?
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace QuickImage
{
public partial class RenameForm : Form
{
public class RenameEventArgs : EventArgs
{
public ListViewItem ListViewItem { get; }
public string FileName { get; }
private RenameEventArgs()
{
}
public RenameEventArgs(ListViewItem listViewItem, string fileName) : this()
{
ListViewItem = listViewItem;
FileName = fileName;
}
}
public event EventHandler<RenameEventArgs> Rename;
private readonly ListViewItem _listViewItem;
private RenameForm()
{
InitializeComponent();
}
public RenameForm(string path) : this()
{
textBox1.Text = Path.GetFileName(path);
}
public RenameForm(ListViewItem item) : this()
{
_listViewItem = item;
textBox1.Text = Path.GetFileName(item.Name);
}
private void button2_Click(object sender, EventArgs e)
{
Close();
}
private void button1_Click(object sender, EventArgs e)
{
//ok
Rename?.Invoke(this, new RenameEventArgs(_listViewItem, textBox1.Text));
}
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
switch (e.KeyChar)
{
case (char)Keys.Return:
break;
case (char)Keys.Escape:
Close();
return;
default:
return;
}
// Skip the beep.
e.Handled = true;
Rename?.Invoke(this, new RenameEventArgs(_listViewItem, textBox1.Text));
Close();
}
private void RenameForm_KeyUp(object sender, KeyEventArgs e)
{
if (e.KeyCode != Keys.Escape)
{
return;
}
Close();
}
}
}