【发布时间】:2015-01-07 21:00:27
【问题描述】:
我需要一个 DataTemplate 中的 WPF 弹出窗口,如下所示:
<ScrollViewer>
<ItemsControl ItemsSource="{Binding Collection}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<Grid>
<TextBox Name="MyTextboxBrief" Text="{Binding TextBrief}"/>
<Popup PlacementTarget="{Binding ElementName=MyTextboxBrief}" Placement="Center">
<TextBox Name="MyTextboxVerbose" Text="{Binding TextVerbose}"/>
</Popup>
</Grid>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</ScrollViewer>
但是,这个 Popup 应该是这样的:
- 它必须与相关的 ItemsControl 项一起滚动
- 当应用程序窗口最小化时 - 它不应在桌面上保持可见
- 它会比 ItemsControl 高,它的内容不能被剪裁,但不能改变 ItemsControl 的高度
- 它将比相关的 ItemsControl 项目更宽 - 但它不应将其他 ItemsControl 项目向左或向右移动
我有一种强烈的感觉,我应该以某种方式使用 ComboBox 模板 - 但我不明白如何获得它的 Popup 行为
【问题讨论】: