我正在使用具有以下代码创建的属性IsEditable=true
的ComboBox:
ComboBox buffer = new ComboBox()
{
BorderBrush = null,
Foreground = new SolidColorBrush(Colors.Black),
Background = null,
FontFamily = new FontFamily("Segoe UI Semilight"),
FontSize = 24,
IsEditable = true,
IsTextSearchEnabled = true,
IsTextSearchCaseSensitive = false,
StaysOpenOnEdit = true,
};
它被添加到ScrollViewer的WrapPanel中,定义如下:
<ScrollViewer Margin="582,107,142,240"
HorizontalAlignment="Left"
VerticalAlignment="Top"
Height="226" Width="357">
<Border Background="White"
CornerRadius="10"
BorderBrush="Black"
BorderThickness="1"
MouseDown="Border_MouseDown"
MouseLeave="Border_MouseLeave"
MouseUp="Border_MouseUp">
<WrapPanel x:Name="sourcesWrapPanel" Width="357"/>
</Border>
</ScrollViewer>
在手动选择时它可以正常工作,但是无法进行书写(按键不会输入任何文本)。唯一有效的方法是使用鼠标或向上/向下箭头选择一个项目,然后使用退格键删除其中的字符。我想念什么?
答案 0 :(得分:0)
答案 1 :(得分:0)
在父控件中将e.Handled
设置为true
,因此仅对子(PreviewKeyDown
)执行ComboBox
处理程序,这就是为什么我只能删除文本的原因或粘贴但不写任何内容。