让DataGrid出现在文本框下面

时间:2013-10-15 18:42:41

标签: wpf datagrid wpfdatagrid

我想要的是数据网格在用户启动时出现在文本框下面。一旦焦点从文本框中丢失,数据网格就会消失。我很难格式化它,所以不会搞砸其余的窗口格式。

在询问使用列表框之前,我需要多列,用户应该可以对列表重新排序。

1 个答案:

答案 0 :(得分:1)

还有一个想法。将DataGrid的可见性绑定到ViewModel中的属性。最初,您可以将“可见性”设置为“可见”。

接下来,您可以使用文本框的LostFocus事件上的Interactivity将Visibility更改为Hidden / Collapsed。

以下是一个例子

    <TextBox Text="Test">
        <i:Interaction.Triggers>
            <i:EventTrigger EventName="LostFocus">
                <i:InvokeCommandAction Command="{Binding DataGridVisibilityCommand}" CommandParameter="Collapsed"/>
            </i:EventTrigger>
        </i:Interaction.Triggers>
    </TextBox>
    <DataGrid Visibility="{Binding DataGridVisibility}"/>

添加名称空间

    xmlns:i="http://schemas.microsoft.com/expression/2010/interactions"

到你的窗口/ usercontrol并添加必要的dll引用。