Добавление нескольких гиперссылок без URL-адреса в RichTextBox C# для создания события для каждого
Начнем с контекста... Я создаю игру Text Adventure с использованием C# Windows Form, потому что я новичок, и это то, что я понимаю. (Я не хочу использовать что-то вроде Inform, это проект, чтобы я мог учиться.)
При этом я хотел бы избежать использования кнопок, и большая часть контента будет отображаться в richtextbox. Я осмотрелся вокруг и не могу найти ничего подходящего мне. (Да, я посмотрел здесь: http://www.codeproject.com/Articles/9196/Links-with-arbitrary-text-in-a-RichTextBox но он плохо обрабатывает несколько ссылок и имеет другие проблемы.)
Моя цель в основном состоит в том, чтобы использовать ссылки в richtextbox в качестве меню навигации и для контекстной цели. Я хотел бы иметь возможность иметь текст до и после ссылки, как если бы она была включена в сам текст.
Вот мой код:
public partial class Form1 : Form
{
Room1 Room1 = new Room1();
public Form1()
{
InitializeComponent();
PlayArea.Text = "Welcome to the Game! Would you like to start?";
Game();
}
private void Game()
{
PlayArea.Text = "Welcome Back!";
button1.Text = "Start?";
button1.Click += Button1_Beginning;
void Button1_Beginning(object sender, EventArgs e)
{
button1.Click -= Button1_Beginning;
FirstRoom();
}
}
private void FirstRoom()
{
PlayArea.Text = Room1.Description;
button1.Text = "ClickMe!";
button1.Click += Button1_FirstRoom;
void Button1_FirstRoom(object sender, EventArgs e)
{
PlayArea.Text = String.Empty;
}
button2.Text = "Return";
button2.Click += Button2_FirstRoom;
void Button2_FirstRoom(object sender, EventArgs e)
{
button1.Click -= Button1_FirstRoom;
button2.Click -= Button2_FirstRoom;
ClearButtonText();
Game();
}
}
private void ClearButtonText()
{
foreach (var button in Controls.OfType<Button>())
{
button.Text = string.Empty;
}
}
На данный момент некоторые вещи активируются кнопками, моя цель - удалить их, а большинство вещей активировать с помощью гиперссылок.
Есть идеи как этого добиться?