私が欲しいのは、ユーザーが起動したときにテキストボックスの下にデータグリッドが表示されるようにすることです。テキストボックスからフォーカスが失われると、データグリッドは消えます。私はそれをフォーマットするのに苦労しているので、残りのウィンドウのフォーマットを台無しにすることはありません。
リスト ボックスの使用について質問する前に、複数の列が必要であり、ユーザーがリストの順序を変更できる必要があります。
私が欲しいのは、ユーザーが起動したときにテキストボックスの下にデータグリッドが表示されるようにすることです。テキストボックスからフォーカスが失われると、データグリッドは消えます。私はそれをフォーマットするのに苦労しているので、残りのウィンドウのフォーマットを台無しにすることはありません。
リスト ボックスの使用について質問する前に、複数の列が必要であり、ユーザーがリストの順序を変更できる必要があります。
もう1つのアイデア。DataGrid の可視性を ViewModel のプロパティにバインドします。最初に、Visibility を Visible に設定できます。
次に、テキストボックスの 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"
ウィンドウ/ユーザー コントロールに、必要な dll 参照を追加します。