[英]Setting Focus to TextBox from Other UserControl inside a Canvas?
我在窗口内使用画布,使其像MDI应用程序一样。
画布将包含多个作为子窗口的UserControl。
我可以在某些文本框的GotFocus事件上的Canvas中打开一个新的UserControl。
但是,当我单击Enter或关闭新窗口时,是否要将焦点设置回旧的UserControl的下一个TextBox? 我无法实现。
我在Caliburn Micro上使用WPF吗? 当前使用EventAggreagator在TextBox的GotFocus事件上打开新的UserControl。
我最近做了类似的事情,唯一想到的就是使用IEventAggregator
发布UserControl已关闭的通知,即
public class ControlClosedEvent
{
public ControlClosedEvent()
{
// can be an empty event for all intents and purposes
}
}
每当UserControl关闭时,都会发布事件:
_events.Publish( new ControlClosedEvent() );
和消费者:
public partial class SomeView : UserControl, IHandle<ControlClosedEvent>
{
public void Handle( ControlClosedEvent message )
{
// ugly way of setting the text box as focused
SomeTextBox.Focus();
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.