c#wpf richtextbox运行鼠标

c#wpf richtextbox运行鼠标,c#,wpf,events,richtextbox,C#,Wpf,Events,Richtextbox,嘿,我有一个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

嘿,我有一个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事件无法运行,因此必须有一种方法


提前感谢您的帮助。

找到了awnser。在wpf中的文本框和富文本框中,点击不注册或其他。您可以使用它来注册单击

 r.AddHandler(UIElement.MouseLeftButtonDownEvent, new MouseButtonEventHandler(delegate(object sender, MouseButtonEventArgs e)
{
//code here
}));

“一切正常,但我无法注册任何鼠标按下/关闭事件。”你有没有收到错误,还是根本不起作用?@Mike Caron it根本不起作用。没有错误。我在委托中放置了一个调试点,它永远不会到达,而且它里面什么也不会发生。mouseup、mousedown、leftmouseup、leftmousedown等事件都是如此。