在阅读了这个问题和这个接受的答案之后,我尝试在 C# 中使用 MonoMac 实现给定的 Objective-C 解决方案:
- (BOOL)control:(NSControl*)control
textView:(NSTextView*)textView
doCommandBySelector:(SEL)commandSelector
{
BOOL result = NO;
if (commandSelector == @selector(insertNewline:))
{
// new line action:
// always insert a line-break character and don’t cause the receiver
// to end editing
[textView insertNewlineIgnoringFieldEditor:self];
result = YES;
}
return result;
}
我设法为我的文本框分配了一个委托并覆盖了该DoCommandBySelector
方法。我没有管理的是翻译该行
if (commandSelector == @selector(insertNewline:))
和线
[textView insertNewlineIgnoringFieldEditor:self];
变成一个 C# 等价物,即使经过数小时的试错,再加上许多“谷歌搜索”,每个人都在谈论。
所以我的问题是:
如何将以上两行代码转换为可用的 MonoMac C# 代码?