我有一个 TextBlock
MouseDown
事件:
tb.MouseDown += (s, e) => {
ToSp.Children.Add(CreateTbAlp((s as TextBlock).Text, ToSp));
CheckAnswer();
};
在单元测试中我需要测试它。我试过了:
TextBlockAutomationPeer peer = new TextBlockAutomationPeer(tb);
IInvokeProvider invokeProv = peer.GetPattern(PatternInterface.Invoke) as IInvokeProvider;
invokeProv.Invoke();
但在这种情况下,我收到错误
<块引用>System.NullReferenceException
和这个一样
typeof (TextBlock)
.GetMethod("MouseDown", BindingFlags.Instance | BindingFlags.NonPublic)
.Invoke(tb, new object[0]);
还有其他方式可以通过编程方式点击 TextBlock
吗?
答案 0 :(得分:0)
TextBlock.RaiseEvent(new RoutedEventArgs(TextBlock.MouseDown));