Эй, у меня есть richtextbox.Чтобы добавить контент, я делаю это
Paragraph p = new Paragraph();
Run r;
r = new Run("[" + user + "]: ");
b = System.Windows.Media.Brushes.Black;
if (user.Equals(Program.LClient.strUserName))
b = Brushes.Blue;
r.Foreground = b;
r.ToolTip = DateTime.Now.ToLongTimeString() + " " + DateTime.Now.ToLongDateString() + "\nClick to whisper";
r.Cursor = Cursors.Hand;
r.Background = Brushes.White;
r.MouseEnter += delegate(object sender, MouseEventArgs e)
{
r.Background = new RadialGradientBrush(Colors.DarkGray, Colors.WhiteSmoke);
};
r.MouseLeave += delegate(object sender, MouseEventArgs e)
{
r.Background = Brushes.White;
};
r.PreviewMouseUp += delegate(object sender, MouseButtonEventArgs e)
{
tbMess.Text = "/w " + user + " ";
tbMess.Focus();
};
p.Inlines.Add(new Bold(r));
rtbChat.Document.Blocks.Add(p);
Все работает, кроме того, что я могу зарегистрировать ЛЮБЫЕ события mouseup / down.Мышь входит и уходит с работы нормально, просто по какой-то причине не может получить никаких событий.Кроме того, у меня нет событий мыши, зарегистрированных в RichTextBox.
Кроме того, прочитайте это, прежде чем предлагать альтернативные способы сделать это.
Меня не интересует поиск нового путисделать это.Я знаю, что мог бы хранить множество местоположений всех различных элементов, которые я хочу отслеживать, но я не заинтересован в этом.Я не нашел документации о том, что события mouseup / down недоступны для запуска, поэтому должен быть способ.
Заранее спасибо за помощь.