Elementhost和Popup

时间:2013-09-11 14:57:00

标签: c# wpf winforms popup elementhost

我遇到了Windows.Forms.ElementHost的问题。在主持人中我放置了一个WPF UserControl,其中我得到了Popup

一些代码:

<UserControl
       xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
       xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
       xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
       xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
       mc:Ignorable="d" 
       d:DesignHeight="300" d:DesignWidth="380">
    <Grid>
        <Popup x:Name="TestPopup"
              IsOpen="{Binding PopupVisible,UpdateSourceTrigger=PropertyChanged}" 
              Placement="Center" 
              StaysOpen="False" Width="200" Height="50">
            <Grid>
                <TextBox/>
            </Grid>
        </Popup>
        <Button Click="Button_Click" />
    </Grid>
</UserControl>

所以在这个例子中,我得到的只是ElementHostUserControlPopup(以及一个ViewModel,其中弹出的IsOpen变量PopUpVisible被实现)。

现在我在Buttons中有两个UserControl ...一个,在我的WindowsForm中有一个使用ElementHost。

两个按钮中的每一个都将IsOpen变量PopUpVisible设置为true。因此,如果我按下按钮,则会显示相同的弹出窗口。在此之前,一切都很棒。

现在我的弹出窗口中有一个textbox ...我点击这个textbox并开始给一些随机的东西小费......如果我在我的wpf usercontrol中按下按钮就行了!但是,如果我按下WindowsForm中的按钮,事情开始变得怪异!我的焦点和所有内容都在我的文本框上,但文本框不会让我的任何键盘小费。我检查并对其进行了双重检查......我肯定在文本框上得到了“键盘焦点”!

有点卡在这里......有人有想法吗?

亲切的问候。

0 个答案:

没有答案