Можно показывать курсор из отдельного файла. Для того, чтобы узнать о том, как создавать курсор читайте шаги "Шаг 122 - Программа для создания курсора" и "Шаг 123 - Еще одна программа для создания курсоров". Для этого в классе Cursor есть конструктор:
public Cursor(string fileName);
Достаточно передать имя файла. Смотрим пример.
// DotNet CSharp Sample code
using System;
using System.Windows.Forms;
using System.Drawing;
class MainForm : Form
{
public MainForm()
{
Text = "This is my form";
}
protected override void OnMouseDown(MouseEventArgs e)
{
Cursor.Current = new Cursor("D:\\net_step\\6\\NO.CUR");
}
public static void Main(string[] args)
{
Application.Run(new MainForm());
}
}
В момент нажатия кнопки курсор покажется, отпустите пропадет.